### Preflight Checklist

- [X] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/main/CONTRIBUTING.md) for this project.
- [X] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/main/CODE_OF_CONDUCT.md) that this project adheres to.
- [X] I have searched the [issue tracker](https://www.github.com/electron/electron/issues) for a bug report that matches the one I want to file, without success.

### Electron Version

18.1.0

### What operating system are you using?

Ubuntu

### Operating System Version

Ubuntu 20.04

### What arch are you using?

x64

### Last Known Working Electron version

_No response_

### Expected Behavior

Offscreen rendering paint events should receive events for SELECT input elements.

### Actual Behavior

Sometimes an empty white box appears, or nothing happens.

### Testcase Gist URL

https://gist.github.com/gtalusan/c0ad56685aeb3b2c1108fbccf6b451b4

### Additional Information

Here's a screenshot when the fiddle is run with `offscreen = false`:

<img width="760" alt="Screen Shot 2022-05-03 at 9 54 42 AM" src="https://user-images.githubusercontent.com/355585/166471227-1e0e27b0-cc8b-4c8e-94e5-a4261e2437b6.png">

Here are the paint event images saved to PNGs when `offscreen = true`:
![0](https://user-images.githubusercontent.com/355585/166471435-209960eb-27e2-47f1-a758-1760a052f3d1.png)
![1](https://user-images.githubusercontent.com/355585/166471445-269fab98-f046-43d4-b72a-65a49c5bc067.png)


shell/browser/osr/osr_video_consumer.cc
video_capturer_->SetMinCapturePeriod(base::Seconds(1) / frame_rate);
}
void OffScreenVideoConsumer::SizeChanged() {
  video_capturer_->SetResolutionConstraints(view_->SizeInPixels(),
                                            view_->SizeInPixels(), true);
  video_capturer_->RequestRefreshFrame();
}
void OffScreenVideoConsumer::OnFrameCaptured(
    ::media::mojom::VideoBufferHandlePtr data,
    ::media::mojom::VideoFrameInfoPtr info,
    const gfx::Rect& content_rect,
    mojo::PendingRemote<viz::mojom::FrameSinkVideoConsumerFrameCallbacks>
        callbacks) {
  auto& data_region = data->get_read_only_shmem_region();
  if (!CheckContentRect(content_rect)) {
    gfx::Size view_size = view_->SizeInPixels();
    video_capturer_->SetResolutionConstraints(view_size, view_size, true);
    video_capturer_->RequestRefreshFrame();
    return;
  }
  mojo::Remote<viz::mojom::FrameSinkVideoConsumerFrameCallbacks>
      callbacks_remote(std::move(callbacks));
  if (!data_region.IsValid()) {
    callbacks_remote->Done();
    return;
  }