iTerm2 beach balls, probably due to window resizing when disconnecting an external monitor
- iTerm2 version: 3.1.beta.2
- OS version: macOS Sierra 10.12.6 (16G29)
- Attach here: com.googlecode.iterm2.plist
- Attach a debug log: Not possible as iTerm beach balled
- Are you reporting a performance issue or a hang? Yes, Sample_of_iTerm2.txt
Detailed steps to reproduce the problem:
- Have an external screen attached (more details on this later).
- Start iTerm2 on the external screen.
- Open a few tabs open with Neovim in at least one (I cannot reproduce without Neovim but I'm not 100% sure it's the program causing this).
- Lock the screen.
- Unlock the screen.
- Try to use iTerm 2.
What happened:
iTerm2 is not responsive and shows a spinning beach ball cursor.
What should have happened:
Kept working instead of beach balling ;)
More details on the external screen:
This bug happens for me when I use an external screen connected to a Macbook Pro 2016 through a USB-C Dock. When unlocking the screen, sometimes all the screens flash black a few times. I think that macOS is thinking some screen is disconnected/connected, so it resizes windows to move them to the main screen and then back to the external one. I believe that the actual cause of the freeze is some interaction between screen resizing, iTerm2 and Neovim.
I could also reproduce sometimes without the locking/unlocking by disconnecting the external monitor where iTerm2 is (so macOS moves it to the main one).
I cannot reproduce by just resizing the window manually or moving it around.
This started happening when I started using Neovim (from homebrew) instead of vim, so I don't think it's a recent regression.