Skip to content
Mar 8, 2021
Fix smart cursor color, which uses NSClipRect and that call was not u…
…pdated to use virtual offsets. Issue 9532
Mar 5, 2021
Change wording in dashboard min windows threshold to be clearer. Issu…
…e 9530
Mar 4, 2021
Remove flexible space from prefs panel. It was selectable because NST…
…oolbar is insane (it only appears if selectable!) and also didn't work very well. Issue 9522
Mar 2, 2021
Fix snapshots by working around AppKit bug. This fixes mostly clear i…
…mages when dragging a tab.
Mar 2, 2021
Bounce metal when a window changes screen. I was able to reproduce th…
…e problem described in issue 9515. The view hierarchy was fine, but the metal view was broken for some unknown reason. Issue 9515.
Mar 1, 2021
Remove HTML from session names in various places. Issue 9512.
Feb 25, 2021
Fix legacy renderer's handling of background images with non-opaque p…
…arts. Issue 9011

Non-opaque background images would show the window background color in the legacy renderer. In the GPU renderer they would be completely wrong because the fragment shader had a bug (alpha was assigned to w rather than multiplying w).

The architecture is now:

LEGACY RENDERER
iTermImageView is a container. It has two subviews.
The lower view is iTermImageBackgroundColorView. This is a 100% alpha view with the default background color.
On top of that is iTermInternalImageView. It shows the image, also at 100% alpha.

Normally, the image is completely opaque and iTermImageBackgroundColorView is completely obscured by iTermInternalImageView. But if it does have any non-opaque pixels, the default background color is behind the image as a backstop.

Since the session might be transparent, iTermImageView itself will have an alphaValue that comes from iTermAlphaValueForBottomView.

On top of all this is iTermSessionBackgroundColorView. Its alpha value comes from iTermAlphaValueForTopView.

GPU RENDERER
Blend the default background color at alpha=1 with the image sample in the fragment shader for background image rendering. Then multiply that value by alpha. This is identical to the legacy renderer's algorithm, but in a lot less code :)
Feb 24, 2021
If the home directory dotdir can't be created, show a warning exactly…
… once and disable all features that need it.
Feb 22, 2021
Tell xcode to shut its gobhole about project settings
Feb 18, 2021
Fix some bugs in broadcast to panes in current tab. The model was mud…
…dled. I think what it was mean to be is: this broadcast mode is enabled on tabs, not on the window. Other modes are enabled on the window, and when selected reset the per-tab setting and supercede it. Now when you toggle it, it will enable/disable the setting for the current tab. If doing so disables it for all tabs in the window then the mode is reset to off. Meanwhile, the checked item in the menu takes the current tab into account when choosing between 'off' and 'all panes in current tab'. Issue 9492