Repository: electron/electron (language: cpp)

Issue:
[Feature Request]: Improve Documentation on BrowserWindow `type` attribute
### 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 feature request that matches the one I want to file, without success.

### Problem Description

The docs regarding the `type` property of the BrowserWindow lacks explanation:

https://www.electronjs.org/de/docs/latest/api/browser-window

```
The possible values and behaviors of the type option are platform dependent. Mögliche Werte sind:

On Linux, possible types are desktop, dock, toolbar, splash, notification.
On macOS, possible types are desktop, textured.
The textured type adds metal gradient appearance (NSTexturedBackgroundWindowMask).
The desktop type places the window at the desktop background window level (kCGDesktopWindowLevel - 1). Note that desktop window will not receive focus, keyboard or mouse events, but you can use globalShortcut to receive input sparingly.
On Windows, possible type is toolbar.
```

It is not clear what the effects of the seperate options are, e.g.

A frameless window on linux with type `splash` is not draggable, even if the style property on the body contains `-webkit-app-region: drag`

### Proposed Solution

Add some context for the values e.g.

On Linux, possible types are:
 - desktop: ...
 -  dock: ...
 -  toolbar: ...
 -  splash: Window type `splash` does x,y and prevents the window from being draged
 -  notification: ...
 

### Alternatives Considered

None

### Additional Information

I have chosen "splash" as type of my BrowserWindows, for a reason i cant remember. On my windows machine i have been able to move the window, on linux not.

The search for the reason have more or less been "try and error" -> comment everything until it works

After i found the culprint, window type `splash`, i wanted to check what are the side effects if i remove this setting but the docs didnt have any information.  


Discussion / hints:
Hey could you please explain what exactly we have to do in this issue

Of course.

This issue is about the documentation. To be more precise it is about the section i mentioned above,

The different values for `type` are mentioned in the documentation, but not what they do and what is the difference between them.

IMHO the documentation lacks documentation 😄 



Fix patch:
diff --git a/docs/api/structures/browser-window-options.md b/docs/api/structures/browser-window-options.md
index 64204ba470eac..1ee7a952a8516 100644
--- a/docs/api/structures/browser-window-options.md
+++ b/docs/api/structures/browser-window-options.md
@@ -140,6 +140,16 @@ Possible values are:
 
 * On Linux, possible types are `desktop`, `dock`, `toolbar`, `splash`,
   `notification`.
+  * The `desktop` type places the window at the desktop background window level
+    (kCGDesktopWindowLevel - 1). However, note that a desktop window will not
+    receive focus, keyboard, or mouse events. You can still use globalShortcut to
+    receive input sparingly.
+  * The `dock` type creates a dock-like window behavior.
+  * The `toolbar` type creates a window with a toolbar appearance.
+  * The `splash` type behaves in a specific way. It is not
+    draggable, even if the CSS styling of the window's body contains
+    -webkit-app-region: drag. This type is commonly used for splash screens.
+  * The `notification` type creates a window that behaves like a system notification.
 * On macOS, possible types are `desktop`, `textured`, `panel`.
   * The `textured` type adds metal gradient appearance
     (`NSWindowStyleMaskTexturedBackground`).


Test patch: