Skip to content

Commit

Permalink
feat: add window removeMenu() method (backport: 5-0-x) (#16657)
Browse files Browse the repository at this point in the history
* feat: add window removeMenu() method

* chore: remove original method from docs and code

* retain backwards compatibility
  • Loading branch information
trop[bot] authored and codebytere committed Feb 4, 2019
1 parent a498e0c commit 26e0a7d
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 3 deletions.
8 changes: 8 additions & 0 deletions atom/browser/api/atom_api_top_level_window.cc
Expand Up @@ -659,6 +659,13 @@ void TopLevelWindow::SetMenu(v8::Isolate* isolate, v8::Local<v8::Value> value) {
}
}

void TopLevelWindow::RemoveMenu() {
mate::Handle<Menu> menu;

menu_.Reset();
window_->SetMenu(nullptr);
}

void TopLevelWindow::SetParentWindow(v8::Local<v8::Value> value,
mate::Arguments* args) {
if (IsModal()) {
Expand Down Expand Up @@ -1103,6 +1110,7 @@ void TopLevelWindow::BuildPrototype(v8::Isolate* isolate,
.SetMethod("setContentProtection", &TopLevelWindow::SetContentProtection)
.SetMethod("setFocusable", &TopLevelWindow::SetFocusable)
.SetMethod("setMenu", &TopLevelWindow::SetMenu)
.SetMethod("removeMenu", &TopLevelWindow::RemoveMenu)
.SetMethod("setParentWindow", &TopLevelWindow::SetParentWindow)
.SetMethod("setBrowserView", &TopLevelWindow::SetBrowserView)
.SetMethod("addBrowserView", &TopLevelWindow::AddBrowserView)
Expand Down
1 change: 1 addition & 0 deletions atom/browser/api/atom_api_top_level_window.h
Expand Up @@ -165,6 +165,7 @@ class TopLevelWindow : public mate::TrackableObject<TopLevelWindow>,
void SetContentProtection(bool enable);
void SetFocusable(bool focusable);
void SetMenu(v8::Isolate* isolate, v8::Local<v8::Value> menu);
void RemoveMenu();
void SetParentWindow(v8::Local<v8::Value> value, mate::Arguments* args);
virtual void SetBrowserView(v8::Local<v8::Value> value);
virtual void AddBrowserView(v8::Local<v8::Value> value);
Expand Down
11 changes: 10 additions & 1 deletion docs/api/breaking-changes.md
Expand Up @@ -8,6 +8,15 @@ The `FIXME` string is used in code comments to denote things that should be fixe

# Planned Breaking API Changes (6.0)

## `win.setMenu(null)`

```js
// Deprecated
win.setMenu(null)
// Replace with
win.removeMenu()
```

## `electron.screen` in renderer process

```js
Expand Down Expand Up @@ -64,7 +73,7 @@ A new API, `protocol.registerSchemesAsPrivileged` has been added and should be u

# Planned Breaking API Changes (4.0)

The following list includes the breaking API changes planned for Electron 4.0.
The following list includes the breaking API changes made in Electron 4.0.

## `app.makeSingleInstance`

Expand Down
7 changes: 5 additions & 2 deletions docs/api/browser-window.md
Expand Up @@ -1308,8 +1308,11 @@ Same as `webContents.reload`.

* `menu` Menu | null

Sets the `menu` as the window's menu bar, setting it to `null` will remove the
menu bar.
Sets the `menu` as the window's menu bar.

#### `win.removeMenu()` _Linux_ _Windows_

Remove the window's menu bar.

#### `win.setProgressBar(progress[, options])`

Expand Down

0 comments on commit 26e0a7d

Please sign in to comment.