covered method

String covered(
  1. String verb,
  2. String described, {
  3. String? landsOn,
})

landsOn names what the pointer actually reaches, when the hit test could name it. It comes from the hit path the reachability check already ran — a fact, not a guess. Without it the sentence falls back to the two usual causes, both of which can be wrong at once: an OverflowBox that pushes a target's centre over a neighbour covers nothing and absorbs nothing.

Implementation

String covered(String verb, String described, {String? landsOn}) =>
    '$described is on screen, but `$prefix$verb` at its center would not '
    'reach it: '
    '${landsOn == null ? 'another widget covers it, or an IgnorePointer or '
              'AbsorbPointer takes the pointer' : 'the pointer there lands on $landsOn instead'}'
    '.$coveredEscapeHatch';