App hangs when it is reopened after being closed on a second monitor. (eframe, persistence feature)
- Dominant language
- Rust
- Stars
- 30.6k
- Forks
- 2.1k
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 72
Description
**Describe the bug**
The issue was reported by [noita-proxy](https://github.com/IntQuant/noita_entangled_worlds) user.
Seems like certain content of `app.ron` causes the app to hang when opened again.
Windows specific, might be windows 11 specific.
Works with that content:
```ron
"window": "(inner_position_pixels:Some((x:242.0,y:265.0)),outer_position_pixels:Some((x:234.0,y:234.0)),fullscreen:false,inner_size_points:Some((x:800.0,y:600.0)))",
```
Hangs with that content:
```ron
"window": "(inner_position_pixels:Some((x:2453.0,y:131.0)),outer_position_pixels:Some((x:2445.0,y:100.0)),fullscreen:false,inner_size_points:Some((x:800.0,y:600.0)))",
```
Content of "hangs" file was obtained by moving the window to the second monitor.
**To Reproduce**
Steps to reproduce the behavior:
1. Start the app.
2. Move it to the second monitor. (probably the one that is placed to the right of the primary one?). Editing app.ron file should also work.
3. Close and reopen app.
4. It should hang
**Expected behavior**
Application shouldn't hang because of malformed app.ron file.
**Screenshots**
**Desktop (please complete the following information):**
- OS: Windows 11
- Native
- Rendering backend: glow
**Additional context**
Contributor guide
Research direction
Start by reproducing the Windows 11 case with the reported app.ron window content, moving the app to a second monitor before closing and reopening it. Compare the working and hanging window-position values and inspect the eframe persistence path reached during startup. Done means the app reopens without hanging when those persisted positions or malformed app.ron content are present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100