<!--  As an open source project with a dedicated but small maintainer team, it can sometimes take a long time for issues to be addressed so please be patient and we will get back to you as soon as we can.
-->

### Preflight Checklist
<!-- Please ensure you've completed the following steps by replacing [ ] with [x]-->

* [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 for an issue that matches the one I want to file, without success.

### Issue Details

* **Electron Version:**
  9.1.0

* **Operating System:**
  Windows 10

* **Last Known Working Electron version:** 
 9.1.0

### Expected Behavior

one

### Actual Behavior

twice

### To Reproduce

1.  First, get the bug replay code:

```sh
$ git clone https://github.com/kaysonwu/electron-quick-start.git -b master
$ yarn install
$ yarn dev
```

2. When the program runs for the first time, click on the title bar

3. In the developer tool console page, you can see the event output twice

### Screenshots

![20200729202825](https://user-images.githubusercontent.com/14865584/88800044-14303200-d1da-11ea-84a5-97331e21f1cf.png)

### Additional Information

Similar: [https://github.com/electron/electron/issues/23275#issuecomment-635253811](https://github.com/electron/electron/issues/23275#issuecomment-635253811)
shell/browser/native_window_views_win.cc
switch (w_param) {
    case SIZE_MAXIMIZED: {
      last_window_state_ = ui::SHOW_STATE_MAXIMIZED;
      NotifyWindowMaximize();
      break;
    }
    case SIZE_MINIMIZED:
      last_window_state_ = ui::SHOW_STATE_MINIMIZED;
      WINDOWPLACEMENT wp;
      wp.length = sizeof(WINDOWPLACEMENT);
      if (GetWindowPlacement(GetAcceleratedWidget(), &wp)) {
        last_normal_placement_bounds_ = gfx::Rect(wp.rcNormalPosition);
      }
      NotifyWindowMinimize();
      break;
    case SIZE_RESTORED:
      switch (last_window_state_) {
        case ui::SHOW_STATE_MAXIMIZED:
          last_window_state_ = ui::SHOW_STATE_NORMAL;
          NotifyWindowUnmaximize();
          break;
        case ui::SHOW_STATE_MINIMIZED:
          if (IsFullscreen()) {
            last_window_state_ = ui::SHOW_STATE_FULLSCREEN;
            NotifyWindowEnterFullScreen();
          } else {
            last_window_state_ = ui::SHOW_STATE_NORMAL;
            NotifyWindowRestore();