anchor.diff:    /// A row whose [onSelectChanged] callback is null is ignored for
     /// the purposes of determining the state of the "all" checkbox,
     /// and its checkbox is disabled.
  +  ///
  +  /// If a [DataCell] in the row has its [DataCell.onTap] callback defined,
  +  /// that callback behavior overrides the gesture behavior of the row for
  +  /// that particular cell.
     final ValueChanged<bool?>? onSelectChanged;
   
     /// Whether the row is selected.
  
positive.code: /// thus the splash will not occur. (In general, this is easy to
  /// achieve: just put the [TableRowInkWell] as the direct child of the
  /// [Table], and put the other contents of the cell inside it.)
  class TableRowInkWell extends InkResponse {
    /// Creates an ink well for a table row.
    const TableRowInkWell({
  
negative.code:   /// If non-null, tapping the cell will call this callback. If
    /// null, tapping the cell will attempt to select the row (if
    /// [DataRow.onSelectChanged] is provided).
    ///
    /// To define a tap behavior for the entire row, see
    /// [DataRow.onSelectChanged].
    final VoidCallback? onTap;
  
    bool get _debugInteractive => onTap != null;
  