Macvim: Window goes black when using Spectacle to position it

Created on 21 Apr 2017  路  9Comments  路  Source: macvim-dev/macvim

I like that the latest version doesn't flicker when resizing, but a side-effect seems to be that when using Spectacle (https://github.com/eczarny/spectacle) to resize the window to the left or right half of the screen, sometimes the MacVim window goes black, with only the character under the cursor visible in white. Pressing CTRL-L causes the contents to reappear.

Most helpful comment

Same here with Moom as window manager. The problem was introduced with the commits 3fb41cc and 32e1fc9, especially the line 664 in src/MacVim/MMCoreTextView.m:

drawPending = NO;

Commenting this line eliminates the redraw problem (and wrong resize problem of the MacVim window).

But I do not think, that this is the final solution. Maybe someone with a deeper understanding of the window redrawing in MacVim can take a look at the aforementioned commits.

All 9 comments

I am experiencing the same issue. Any resolutions?

Same here with Moom as window manager. The problem was introduced with the commits 3fb41cc and 32e1fc9, especially the line 664 in src/MacVim/MMCoreTextView.m:

drawPending = NO;

Commenting this line eliminates the redraw problem (and wrong resize problem of the MacVim window).

But I do not think, that this is the final solution. Maybe someone with a deeper understanding of the window redrawing in MacVim can take a look at the aforementioned commits.

Same situation for me; I banged on this for a bit and it seems to happen only with the following Spectacle command sequence:
{Alt-Cmd-C}{Alt-Cmd-F}
In other words, I center the window, then go full-screen with the window. All other combinations worked just fine in my testing.
El Capitan 10.11.6
MacVim Custom Version 8.0.596 (133)

Same here, I always manually resize the window by a little to make the black screen go away. It is super annoying though.

Same here, with Amethyst

Can confirm, Amethyst as well.

Easy to reproduce on Amethyst too.

1 - Have MacVim as the only window.
2 - Open a new window (preferably one without strict resizing limits, Safari or a text editor should do the job fine).
3 - Amethyst kicks in and resizes both windows to halves of the screen.
4 - Close the previously opened window.
5 - Amethyst kicks in and puts MacVim fullscreen again.
6 - Vim is now almost entirely black except the current line.

I find the same problem using Slate (https://github.com/jigish/slate). If I create a new window (e.g., using mvim or cmd+N), and then immediately size the window so it's completely fullscreen, some of the window will be black and if there's text on screen, it will often be duplicated.

I can confirm that ctrl+L seems to fix it, or just resizing it a little bit.

Same problem happens when using Divvy to resize MacVim windows. As with the other tools, C-l redraws successfully.

Isn't an issue that could be fixed regardless the comment https://github.com/macvim-dev/macvim/issues/497#issuecomment-299442827 ?

Was this page helpful?
0 / 5 - 0 ratings