### Preflight Checklist

- [X] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/master/CONTRIBUTING.md) for this project.
- [X] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/master/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 feature request that matches the one I want to file, without success.

### Electron Version

14.0.0-beta.18

### What operating system are you using?

Other Linux

### Operating System Version

Fedora 34

### What arch are you using?

x64

### Last Known Working Electron version

13.1.8

### Expected Behavior

Frameless windows should have mouse interaction, similar to regular windows.

### Actual Behavior

Every single regular mouse event is completely ignored, on all levels thinkable. Selection doesn't work, double-clicking doesn't, input fields don't work, and even custom events on the window/body don't fire at all.. The keyboard does work as expected, so the app is not frozen and hasn't crashed.

### Testcase Gist URL

_No response_

### Additional Information

No gist needed, just add `"frame": false` to any basic electron app to break all mouse functionality when using the latest beta.
shell/browser/native_window_views.cc
auto* background = root_view_->background();
  if (!background)
    return SK_ColorTRANSPARENT;
  return background->get_color();
}
void NativeWindowViews::SetBackgroundColor(SkColor background_color) {
  
  root_view_->SetBackground(views::CreateSolidBackground(background_color));
#if defined(OS_WIN)
  
  HBRUSH brush = CreateSolidBrush(skia::SkColorToCOLORREF(background_color));
  ULONG_PTR previous_brush =
      SetClassLongPtr(GetAcceleratedWidget(), GCLP_HBRBACKGROUND,
                      reinterpret_cast<LONG_PTR>(brush));
  if (previous_brush)
    DeleteObject((HBRUSH)previous_brush);
  InvalidateRect(GetAcceleratedWidget(), NULL, 1);
#endif
}
void NativeWindowViews::SetHasShadow(bool has_shadow) {
  wm::SetShadowElevation(GetNativeWindow(),
                         has_shadow ? wm::kShadowElevationInactiveWindow
                                    : wm::kShadowElevationNone);
}
bool NativeWindowViews::HasShadow() {
  return GetNativeWindow()->GetProperty(wm::kShadowElevationKey) !=
         wm::kShadowElevationNone;
}
void NativeWindowViews::SetOpacity(const double opacity) {