chore: deprecate textured
BrowserWindow type
option on macOS (#43133)
This commit is contained in:
parent
c9b7806418
commit
d294871980
5 changed files with 17 additions and 15 deletions
|
@ -139,8 +139,7 @@ Possible values are:
|
||||||
-webkit-app-region: drag. This type is commonly used for splash screens.
|
-webkit-app-region: drag. This type is commonly used for splash screens.
|
||||||
* The `notification` type creates a window that behaves like a system notification.
|
* The `notification` type creates a window that behaves like a system notification.
|
||||||
* On macOS, possible types are `desktop`, `textured`, `panel`.
|
* On macOS, possible types are `desktop`, `textured`, `panel`.
|
||||||
* The `textured` type adds metal gradient appearance
|
* The `textured` type adds metal gradient appearance. This option is **deprecated**.
|
||||||
(`NSWindowStyleMaskTexturedBackground`).
|
|
||||||
* The `desktop` type places the window at the desktop background window level
|
* The `desktop` type places the window at the desktop background window level
|
||||||
(`kCGDesktopWindowLevel - 1`). Note that desktop window will not receive
|
(`kCGDesktopWindowLevel - 1`). Note that desktop window will not receive
|
||||||
focus, keyboard or mouse events, but you can use `globalShortcut` to receive
|
focus, keyboard or mouse events, but you can use `globalShortcut` to receive
|
||||||
|
|
|
@ -14,6 +14,10 @@ This document uses the following convention to categorize breaking changes:
|
||||||
|
|
||||||
## Planned Breaking API Changes (33.0)
|
## Planned Breaking API Changes (33.0)
|
||||||
|
|
||||||
|
### Deprecated: `textured` option in `BrowserWindowConstructorOption.type`
|
||||||
|
|
||||||
|
The `textured` option of `type` in `BrowserWindowConstructorOptions` has been deprecated with no replacement. This option relied on the [`NSWindowStyleMaskTexturedBackground`](https://developer.apple.com/documentation/appkit/nswindowstylemask/nswindowstylemasktexturedbackground) style mask on macOS, which has been deprecated with no alternative.
|
||||||
|
|
||||||
### Removed: macOS 10.15 support
|
### Removed: macOS 10.15 support
|
||||||
|
|
||||||
macOS 10.15 (Catalina) is no longer supported by [Chromium](https://chromium-review.googlesource.com/c/chromium/src/+/5734361).
|
macOS 10.15 (Catalina) is no longer supported by [Chromium](https://chromium-review.googlesource.com/c/chromium/src/+/5734361).
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
#include "shell/common/gin_helper/dictionary.h"
|
#include "shell/common/gin_helper/dictionary.h"
|
||||||
#include "shell/common/node_includes.h"
|
#include "shell/common/node_includes.h"
|
||||||
#include "shell/common/options_switches.h"
|
#include "shell/common/options_switches.h"
|
||||||
|
#include "shell/common/process_util.h"
|
||||||
#include "skia/ext/skia_utils_mac.h"
|
#include "skia/ext/skia_utils_mac.h"
|
||||||
#include "third_party/webrtc/modules/desktop_capture/mac/window_list_utils.h"
|
#include "third_party/webrtc/modules/desktop_capture/mac/window_list_utils.h"
|
||||||
#include "ui/base/hit_test.h"
|
#include "ui/base/hit_test.h"
|
||||||
|
@ -154,14 +155,6 @@ NativeWindowMac::NativeWindowMac(const gin_helper::Dictionary& options,
|
||||||
bool hiddenInMissionControl = false;
|
bool hiddenInMissionControl = false;
|
||||||
options.Get(options::kHiddenInMissionControl, &hiddenInMissionControl);
|
options.Get(options::kHiddenInMissionControl, &hiddenInMissionControl);
|
||||||
|
|
||||||
bool useStandardWindow = true;
|
|
||||||
// eventually deprecate separate "standardWindow" option in favor of
|
|
||||||
// standard / textured window types
|
|
||||||
options.Get(options::kStandardWindow, &useStandardWindow);
|
|
||||||
if (windowType == "textured") {
|
|
||||||
useStandardWindow = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// The window without titlebar is treated the same with frameless window.
|
// The window without titlebar is treated the same with frameless window.
|
||||||
if (title_bar_style_ != TitleBarStyle::kNormal)
|
if (title_bar_style_ != TitleBarStyle::kNormal)
|
||||||
set_has_frame(false);
|
set_has_frame(false);
|
||||||
|
@ -186,8 +179,18 @@ NativeWindowMac::NativeWindowMac(const gin_helper::Dictionary& options,
|
||||||
styleMask |= NSWindowStyleMaskClosable;
|
styleMask |= NSWindowStyleMaskClosable;
|
||||||
if (resizable)
|
if (resizable)
|
||||||
styleMask |= NSWindowStyleMaskResizable;
|
styleMask |= NSWindowStyleMaskResizable;
|
||||||
if (!useStandardWindow || transparent() || !has_frame())
|
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
||||||
|
if (windowType == "textured" || transparent() || !has_frame()) {
|
||||||
|
node::Environment* env =
|
||||||
|
node::Environment::GetCurrent(JavascriptEnvironment::GetIsolate());
|
||||||
|
EmitWarning(env,
|
||||||
|
"The 'textured' window type is deprecated and will be removed",
|
||||||
|
"DeprecationWarning");
|
||||||
styleMask |= NSWindowStyleMaskTexturedBackground;
|
styleMask |= NSWindowStyleMaskTexturedBackground;
|
||||||
|
}
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
|
||||||
// -Wdeprecated-declarations
|
// -Wdeprecated-declarations
|
||||||
#pragma clang diagnostic pop
|
#pragma clang diagnostic pop
|
||||||
|
|
|
@ -86,9 +86,6 @@ const char kType[] = "type";
|
||||||
// Disable auto-hiding cursor.
|
// Disable auto-hiding cursor.
|
||||||
const char kDisableAutoHideCursor[] = "disableAutoHideCursor";
|
const char kDisableAutoHideCursor[] = "disableAutoHideCursor";
|
||||||
|
|
||||||
// Use the macOS' standard window instead of the textured window.
|
|
||||||
const char kStandardWindow[] = "standardWindow";
|
|
||||||
|
|
||||||
// Default browser window background color.
|
// Default browser window background color.
|
||||||
const char kBackgroundColor[] = "backgroundColor";
|
const char kBackgroundColor[] = "backgroundColor";
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,6 @@ extern const char kDarkTheme[];
|
||||||
extern const char kTransparent[];
|
extern const char kTransparent[];
|
||||||
extern const char kType[];
|
extern const char kType[];
|
||||||
extern const char kDisableAutoHideCursor[];
|
extern const char kDisableAutoHideCursor[];
|
||||||
extern const char kStandardWindow[];
|
|
||||||
extern const char kBackgroundColor[];
|
extern const char kBackgroundColor[];
|
||||||
extern const char kHasShadow[];
|
extern const char kHasShadow[];
|
||||||
extern const char kOpacity[];
|
extern const char kOpacity[];
|
||||||
|
|
Loading…
Reference in a new issue