message: Invalidate `overlay` layout when `base` layer captures an `Event`
diff: @@ -255,7 +255,7 @@ where
  cursor_position
  };
  - self.overlay = None;
  + self.overlay = Some(layout);
  (base_cursor, event_statuses)
  } else {
  @@ -285,6 +285,10 @@ where
  &mut shell,
  );
  + if matches!(event_status, event::Status::Captured) {
  + self.overlay = None;
  + }
  +
  shell.revalidate_layout(|| {
  self.base = renderer.layout(
  &self.root,
  