mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
Merge pull request #6683 from gabriel/master
Add isVisible() to app.dock
This commit is contained in:
@@ -656,6 +656,7 @@ void Initialize(v8::Local<v8::Object> exports, v8::Local<v8::Value> unused,
|
||||
base::Bind(&Browser::DockGetBadgeText, browser));
|
||||
dict.SetMethod("dockHide", base::Bind(&Browser::DockHide, browser));
|
||||
dict.SetMethod("dockShow", base::Bind(&Browser::DockShow, browser));
|
||||
dict.SetMethod("dockIsVisible", base::Bind(&Browser::DockIsVisible, browser));
|
||||
dict.SetMethod("dockSetMenu", &DockSetMenu);
|
||||
dict.SetMethod("dockSetIcon", base::Bind(&Browser::DockSetIcon, browser));
|
||||
#endif
|
||||
|
||||
@@ -136,6 +136,7 @@ class Browser : public WindowListObserver {
|
||||
// Hide/Show dock.
|
||||
void DockHide();
|
||||
void DockShow();
|
||||
bool DockIsVisible();
|
||||
|
||||
// Set docks' menu.
|
||||
void DockSetMenu(AtomMenuModel* model);
|
||||
|
||||
@@ -208,6 +208,12 @@ void Browser::DockHide() {
|
||||
TransformProcessType(&psn, kProcessTransformToUIElementApplication);
|
||||
}
|
||||
|
||||
bool Browser::DockIsVisible() {
|
||||
// Because DockShow has a slight delay this may not be true immediately
|
||||
// after that call.
|
||||
return ([[NSRunningApplication currentApplication] activationPolicy] == NSApplicationActivationPolicyRegular);
|
||||
}
|
||||
|
||||
void Browser::DockShow() {
|
||||
BOOL active = [[NSRunningApplication currentApplication] isActive];
|
||||
ProcessSerialNumber psn = { 0, kCurrentProcess };
|
||||
|
||||
@@ -725,6 +725,12 @@ Hides the dock icon.
|
||||
|
||||
Shows the dock icon.
|
||||
|
||||
### `app.dock.isVisible()` _macOS_
|
||||
|
||||
Returns whether the dock icon is visible.
|
||||
The `app.dock.show()` call is asynchronous so this method might not
|
||||
return true immediately after that call.
|
||||
|
||||
### `app.dock.setMenu(menu)` _macOS_
|
||||
|
||||
* `menu` [Menu](menu.md)
|
||||
|
||||
@@ -40,6 +40,7 @@ if (process.platform === 'darwin') {
|
||||
getBadge: bindings.dockGetBadgeText,
|
||||
hide: bindings.dockHide,
|
||||
show: bindings.dockShow,
|
||||
isVisible: bindings.dockIsVisible,
|
||||
setMenu: bindings.dockSetMenu,
|
||||
setIcon: bindings.dockSetIcon
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user