         }
 
         let footerSpaceRow = UIView()
+        footerSpaceRow.translatesAutoresizingMaskIntoConstraints = false
         stackView.addArrangedSubview(footerSpaceRow)
         // Without some growable space at the bottom there are constraint errors because the UIView space doesn't subdivide equally, and none of the rows are growable.
         // Also, during the animation to the done state, without this space, the page info label moves down slightly.
-        footerSpaceRow.snp.makeConstraints { make in
-            make.height.greaterThanOrEqualTo(0)
-        }
+        footerSpaceRow.heightAnchor.constraint(greaterThanOrEqualToConstant: 0).isActive = true
 
         actionDoneRow = makeActionDoneRow(addTo: stackView)
         // Fully constructing and pre-adding as a subview ensures that only the show operation will animate during the UIView.animate(),

        let row = UIStackView()
        row.axis = .horizontal
        row.spacing = UX.actionRowSpacingBetweenIconAndTitle
        row.rightLeftEdges(inset: UX.rowInset)
        parent.addArrangedSubview(row)
        row.snp.makeConstraints { make in
            let c = make.height.equalTo(isLandscapeSmallScreen(traitCollection) ? UX.actionRowHeight - UX.perRowShrinkageForLandscape : UX.actionRowHeight).constraint
            actionRowHeights.append(c)
        }

        let icon = UIImageView(image: UIImage(named: imageName)?.withRenderingMode(.alwaysTemplate))
        icon.contentMode = .scaleAspectFit
        icon.tintColor = ShareTheme.actionRowTextAndIcon.color

        let title = UILabel()
        title.font = UX.baseFont

        stackView = UIStackView()
        stackView.axis = .vertical
        stackView.spacing = 4
        stackView.translatesAutoresizingMaskIntoConstraints = false
        view.addSubview(stackView)
        NSLayoutConstraint.activate([
            stackView.topAnchor.constraint(equalTo: view.topAnchor),
            stackView.bottomAnchor.constraint(equalTo: view.bottomAnchor),
            stackView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
            stackView.trailingAnchor.constraint(equalTo: view.trailingAnchor)
         ])
    }
}

