On Windows focusable: false also means skipTaskbar: true
This commit is contained in:
parent
8eca728e0a
commit
50f1837097
3 changed files with 14 additions and 7 deletions
|
@ -153,7 +153,7 @@ void NativeWindow::InitFromOptions(const mate::Dictionary& options) {
|
|||
SetFullScreen(true);
|
||||
}
|
||||
bool skip;
|
||||
if (options.Get(options::kSkipTaskbar, &skip) && skip) {
|
||||
if (options.Get(options::kSkipTaskbar, &skip)) {
|
||||
SetSkipTaskbar(skip);
|
||||
}
|
||||
bool kiosk;
|
||||
|
|
|
@ -181,6 +181,10 @@ NativeWindowViews::NativeWindowViews(
|
|||
if (transparent() && !has_frame())
|
||||
params.shadow_type = views::Widget::InitParams::SHADOW_TYPE_NONE;
|
||||
|
||||
bool focusable;
|
||||
if (options.Get(options::kFocusable, &focusable) && !focusable)
|
||||
params.activatable = views::Widget::InitParams::ACTIVATABLE_NO;
|
||||
|
||||
#if defined(OS_WIN)
|
||||
params.native_widget =
|
||||
new views::DesktopNativeWidgetAura(window_.get());
|
||||
|
@ -696,10 +700,12 @@ void NativeWindowViews::SetFocusable(bool focusable) {
|
|||
#if defined(OS_WIN)
|
||||
LONG ex_style = ::GetWindowLong(GetAcceleratedWidget(), GWL_EXSTYLE);
|
||||
if (focusable)
|
||||
ex_style |= WS_EX_NOACTIVATE;
|
||||
else
|
||||
ex_style &= ~WS_EX_NOACTIVATE;
|
||||
else
|
||||
ex_style |= WS_EX_NOACTIVATE;
|
||||
::SetWindowLong(GetAcceleratedWidget(), GWL_EXSTYLE, ex_style);
|
||||
SetSkipTaskbar(!focusable);
|
||||
Focus(false);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -55,7 +55,8 @@ It creates a new `BrowserWindow` with native properties as set by the `options`.
|
|||
* `closable` Boolean - Whether window is closable. This is not implemented
|
||||
on Linux. Default is `true`.
|
||||
* `focusable` Boolean - Whether the window can be focused. Default is
|
||||
`true`.
|
||||
`true`. On Windows setting `focusable: false` also implies setting
|
||||
`skipTaskbar: true`.
|
||||
* `alwaysOnTop` Boolean - Whether the window should always stay on top of
|
||||
other windows. Default is `false`.
|
||||
* `fullscreen` Boolean - Whether the window should show in fullscreen. When
|
||||
|
@ -955,10 +956,10 @@ All mouse events happened in this window will be passed to the window below
|
|||
this window, but if this window has focus, it will still receive keyboard
|
||||
events.
|
||||
|
||||
### `win.setActivatable(activatable)` _Windows_
|
||||
### `win.setFocusable(focusable)` _Windows_
|
||||
|
||||
* `activatable` Boolean
|
||||
* `focusable` Boolean
|
||||
|
||||
Changes whether the window can be activated.
|
||||
Changes whether the window can be focused.
|
||||
|
||||
[blink-feature-string]: https://cs.chromium.org/chromium/src/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in
|
||||
|
|
Loading…
Reference in a new issue