diff --git a/docs/api/tray.md b/docs/api/tray.md
index 0411b9386798c..a8b370c240891 100644
--- a/docs/api/tray.md
+++ b/docs/api/tray.md
@@ -261,6 +261,10 @@ Returns `Boolean` - Whether double click events will be ignored.
Displays a tray balloon.
+#### `tray.focus()` _Windows_
+
+Returns focus to the taskbar notification area. Notification area icons should use this message when they have completed their UI operation. For example, if the icon displays a shortcut menu, but the user presses ESC to cancel it, use `tray.focus()` to return focus to the notification area.
+
#### `tray.popUpContextMenu([menu, position])` _macOS_ _Windows_
* `menu` Menu (optional)
diff --git a/shell/browser/api/atom_api_tray.cc b/shell/browser/api/atom_api_tray.cc
index 9700440937643..6230d1ea06a56 100644
--- a/shell/browser/api/atom_api_tray.cc
+++ b/shell/browser/api/atom_api_tray.cc
@@ -207,6 +207,10 @@ void Tray::DisplayBalloon(mate::Arguments* args,
#endif
}
+void Tray::Focus() {
+ tray_icon_->Focus();
+}
+
void Tray::PopUpContextMenu(mate::Arguments* args) {
mate::Handle