Skip to content
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

Egui 0.30 #255

Merged
merged 4 commits into from
Dec 28, 2024
Merged

Egui 0.30 #255

merged 4 commits into from
Dec 28, 2024

Conversation

bryceberger
Copy link
Contributor

No description provided.

* Upgrade to egui 0.30.

* Update changelog and readme
@HactarCE
Copy link

Found a crash that happens with this PR but not the main branch

  1. Add accesskit feature to eframe
  2. cargo run --example hello
  3. Drag the "Simple Demo" tab into a floating window

The same crash happens if you drag "Style Editor" out into a floating window, then try to tile it to the right of "Simple Demo" (and probably other permutations of actions)

@bryceberger
Copy link
Contributor Author

Do they also happen in https://github.com/Adanos020/egui_dock/tree/release-0.15?

@HactarCE
Copy link

Nope, it's introduced in this commit

@bryceberger
Copy link
Contributor Author

Cannot reproduce on Linux. Tried both wayland and X11 providers. Was it a panic? What was the stack trace?

@HactarCE
Copy link

It happens for me in debug and release mode on macOS Sequoia 15.1.1 on Macbook M2 Max.

Here's the traceback:

thread 'main' panicked at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_consumer-0.26.0/src/tree.rs:306:55:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0: rust_begin_unwind
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:662:5
   1: core::panicking::panic_fmt
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/panicking.rs:74:14
   2: core::panicking::panic
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/panicking.rs:148:5
   3: core::option::unwrap_failed
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/option.rs:2015:5
   4: core::option::Option<T>::unwrap
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/option.rs:965:21
   5: accesskit_consumer::tree::Tree::process_changes
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_consumer-0.26.0/src/tree.rs:306:28
   6: accesskit_consumer::tree::Tree::update_and_process_changes
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_consumer-0.26.0/src/tree.rs:275:9
   7: accesskit_macos::adapter::Adapter::update_if_active
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_macos-0.18.1/src/adapter.rs:115:17
   8: accesskit_macos::subclass::SubclassingAdapter::update_if_active
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_macos-0.18.1/src/subclass.rs:238:9
   9: accesskit_winit::platform_impl::platform::Adapter::update_if_active
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_winit-0.23.1/src/platform_impl/macos.rs:42:31
  10: accesskit_winit::Adapter::update_if_active
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/accesskit_winit-0.23.1/src/lib.rs:241:9
  11: egui_winit::State::handle_platform_output
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/egui-winit-0.30.0/src/lib.rs:882:17
  12: eframe::native::glow_integration::GlowWinitRunning::run_ui_and_paint
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/glow_integration.rs:635:9
  13: <eframe::native::glow_integration::GlowWinitApp as eframe::native::winit_integration::WinitApp>::run_ui_and_paint
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/glow_integration.rs:388:13
  14: <eframe::native::run::WinitAppWrapper<T> as winit::application::ApplicationHandler<eframe::native::winit_integration::UserEvent>>::window_event::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:294:21
  15: eframe::native::event_loop_context::with_event_loop_context
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/event_loop_context.rs:53:5
  16: <eframe::native::run::WinitAppWrapper<T> as winit::application::ApplicationHandler<eframe::native::winit_integration::UserEvent>>::window_event
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:291:9
  17: winit::event_loop::dispatch_event_for_app
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/event_loop.rs:642:52
  18: winit::platform::run_on_demand::EventLoopExtRunOnDemand::run_app_on_demand::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform/run_on_demand.rs:76:13
  19: winit::platform_impl::macos::event_loop::map_user_event::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_loop.rs:174:22
  20: <alloc::boxed::Box<F,A> as core::ops::function::FnMut<Args>>::call_mut
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/alloc/src/boxed.rs:2238:9
  21: winit::platform_impl::macos::event_handler::EventHandler::handle_event
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_handler.rs:125:17
  22: winit::platform_impl::macos::app_state::ApplicationDelegate::handle_event
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/app_state.rs:322:9
  23: winit::platform_impl::macos::app_state::ApplicationDelegate::cleared
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/app_state.rs:384:13
  24: winit::platform_impl::macos::observer::control_flow_end_handler::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/observer.rs:84:21
  25: winit::platform_impl::macos::observer::control_flow_handler::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/observer.rs:46:9
  26: std::panicking::try::do_call
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:554:40
  27: ___rust_try
  28: std::panicking::try
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:518:19
  29: std::panic::catch_unwind
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panic.rs:345:14
  30: winit::platform_impl::macos::event_loop::stop_app_on_panic
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_loop.rs:432:11
  31: winit::platform_impl::macos::observer::control_flow_handler
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/observer.rs:44:5
  32: winit::platform_impl::macos::observer::control_flow_end_handler
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/observer.rs:79:9
  33: <unknown>
  34: <unknown>
  35: <unknown>
  36: <unknown>
  37: <unknown>
  38: <unknown>
  39: <unknown>
  40: <unknown>
  41: <unknown>
  42: <unknown>
  43: <() as objc2::encode::EncodeArguments>::__invoke
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/objc2-0.5.2/src/encode.rs:437:26
  44: objc2::runtime::message_receiver::msg_send_primitive::send
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/objc2-0.5.2/src/runtime/message_receiver.rs:173:18
  45: objc2::runtime::message_receiver::MessageReceiver::send_message
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/objc2-0.5.2/src/runtime/message_receiver.rs:433:38
  46: objc2::__macro_helpers::msg_send::MsgSend::send_message
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/objc2-0.5.2/src/__macro_helpers/msg_send.rs:27:31
  47: objc2_app_kit::generated::__NSApplication::NSApplication::run
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/objc2-0.5.2/src/macros/extern_methods.rs:247:14
  48: winit::platform_impl::macos::event_loop::EventLoop<T>::run_on_demand::{{closure}}::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_loop.rs:303:26
  49: objc2::rc::autorelease::autoreleasepool
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/objc2-0.5.2/src/rc/autorelease.rs:438:15
  50: winit::platform_impl::macos::event_loop::EventLoop<T>::run_on_demand::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_loop.rs:289:13
  51: winit::platform_impl::macos::event_handler::EventHandler::set
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_handler.rs:98:9
  52: winit::platform_impl::macos::app_state::ApplicationDelegate::set_event_handler
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/app_state.rs:191:9
  53: winit::platform_impl::macos::event_loop::EventLoop<T>::run_on_demand
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform_impl/macos/event_loop.rs:288:9
  54: <winit::event_loop::EventLoop<T> as winit::platform::run_on_demand::EventLoopExtRunOnDemand>::run_on_demand
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform/run_on_demand.rs:89:9
  55: winit::platform::run_on_demand::EventLoopExtRunOnDemand::run_app_on_demand
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.30.7/src/platform/run_on_demand.rs:75:9
  56: eframe::native::run::run_and_return
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:311:5
  57: eframe::native::run::run_glow::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:343:13
  58: eframe::native::run::with_event_loop::{{closure}}
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:63:12
  59: std::thread::local::LocalKey<T>::try_with
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/thread/local.rs:283:12
  60: std::thread::local::LocalKey<T>::with
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/thread/local.rs:260:9
  61: eframe::native::run::with_event_loop
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:53:5
  62: eframe::native::run::run_glow
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/native/run.rs:341:16
  63: eframe::run_native
             at /Users/andrew/.cargo/registry/src/index.crates.io-6f17d22bba15001f/eframe-0.30.0/src/lib.rs:270:13
  64: hello::main
             at ./examples/hello.rs:59:5
  65: core::ops::function::FnOnce::call_once
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

@Adanos020
Copy link
Owner

Thanks @HactarCE for the stack trace. It looks like an egui/eframe issue, not caused by egui_dock.

I'll merge this PR and finally release 0.15. Sorry for the long wait!

@Adanos020 Adanos020 merged commit 150bd4c into Adanos020:release-0.15 Dec 28, 2024
4 checks passed
Adanos020 added a commit that referenced this pull request Dec 28, 2024
* Different design: more compact windows and collapsing/closing control on each tab bar (#237)

* Correct comment typos

* Add two buttons on tab bars

- Close all tabs: "×"
- Collapse all tabs: "▼"

* Add some utility for recursive node collapse checking

* Preliminary implementation of collapsing windows

* Handle tab collapsing layout

* Resize windows when subnodes collapsed

* Implements leaf close all button

* Update changelog

* Allow dragging to a collapsed leaf

* Fix collapsed state checking after dnd splits

* Update examples

* Update changelog

* Fix up changelog after rebase

* Fix failing test and rename `Translations::window` to `Translations::leaf`.

* Remove `Clone` bound on `map_tabs` and `filter_map_tabs` (#241)

* remove Clone bound on map_tabs and filter_map_tabs

* remove Clone bound from all functions with Clone + FnMut bounds

* Update changelog

* Add missing period in changelog

---------

Co-authored-by: Adanos020 <[email protected]>

* Update crate version and add MSRV change to changelog

* Fix heading type in changelog

* Fix tab bar scroll bar width on window surfaces

* Add close window button in context menu

* Add minimize window button

* Update CHANGELOG.md

* Fix cargo test

* Add tooltips to right-clickable tab bar buttons

* Add minimization activation with modifiers

* Add close window with modifiers

* Correct tooltip display conditions

* Upgrade to egui 0.29

* Add secondary button feature toggle

* Cleanup code

* Update examples

* Fix cursor icon logic

* Update examples

* Update changelog

* Make Japanese translations in the example more consistent with each other

---------

Co-authored-by: Adanos020 <[email protected]>
Co-authored-by: Ved_s <[email protected]>

* Egui 0.30 (#255)

* Egui 0.30

* Upgrade to egui 0.30.

* Update changelog and readme

* Update the crate version in Cargo.toml

* Fix winit compile error

* Make Clippy happy

---------

Co-authored-by: Adanos020 <[email protected]>

---------

Co-authored-by: Michael Zhang <[email protected]>
Co-authored-by: Ved_s <[email protected]>
Co-authored-by: Bryce Berger <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants