Image previews were sized from max width first and then height-limited, which could stretch renders when maxHeightCells was the actual limiting bound. Compute a proportional fit within both bounds and forward maxHeightCells through the Image component.