fix: accentColor set distinguishes the frame (#48450)
* fix: accentColor set distinguishes the frame Co-authored-by: zoy <zoy-l@outlook.com> * chore: invalid change Co-authored-by: zoy <zoy-l@outlook.com> * fix: lint Co-authored-by: zoy <zoy-l@outlook.com> --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: zoy <zoy-l@outlook.com>
This commit is contained in:
parent
49aa969139
commit
81c17ef684
1 changed files with 10 additions and 9 deletions
|
@ -31,15 +31,15 @@ namespace electron {
|
|||
|
||||
namespace {
|
||||
|
||||
void SetWindowBorderAndCaptionColor(HWND hwnd, COLORREF color) {
|
||||
if (base::win::GetVersion() < base::win::Version::WIN11)
|
||||
return;
|
||||
void SetWindowBorderAndCaptionColor(HWND hwnd, COLORREF color, bool has_frame) {
|
||||
HRESULT result;
|
||||
if (has_frame) {
|
||||
result =
|
||||
DwmSetWindowAttribute(hwnd, DWMWA_CAPTION_COLOR, &color, sizeof(color));
|
||||
|
||||
HRESULT result =
|
||||
DwmSetWindowAttribute(hwnd, DWMWA_CAPTION_COLOR, &color, sizeof(color));
|
||||
|
||||
if (FAILED(result))
|
||||
LOG(WARNING) << "Failed to set caption color";
|
||||
if (FAILED(result))
|
||||
LOG(WARNING) << "Failed to set caption color";
|
||||
}
|
||||
|
||||
result =
|
||||
DwmSetWindowAttribute(hwnd, DWMWA_BORDER_COLOR, &color, sizeof(color));
|
||||
|
@ -591,7 +591,8 @@ void NativeWindowViews::UpdateWindowAccentColor(bool active) {
|
|||
}
|
||||
|
||||
COLORREF final_color = border_color.value_or(DWMWA_COLOR_DEFAULT);
|
||||
SetWindowBorderAndCaptionColor(GetAcceleratedWidget(), final_color);
|
||||
SetWindowBorderAndCaptionColor(GetAcceleratedWidget(), final_color,
|
||||
has_frame());
|
||||
}
|
||||
|
||||
void NativeWindowViews::SetAccentColor(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue