feat: systemPreferences.getColor
should return RGBA instead of RGB (#38960)
* fix: return RGBA hex value from `SystemPreferences.getColor` * docs: update docs to match changes of last commit * fix: GetColor on windows now returns RGBA too * fix: update tests for getColor RGBA on Windows --------- Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
This commit is contained in:
parent
dd7395ebed
commit
d002f16157
4 changed files with 5 additions and 5 deletions
|
@ -306,7 +306,7 @@ This API is only available on macOS 10.14 Mojave or newer.
|
||||||
* `window-background` - The background of a window.
|
* `window-background` - The background of a window.
|
||||||
* `window-frame-text` - The text in the window's titlebar area.
|
* `window-frame-text` - The text in the window's titlebar area.
|
||||||
|
|
||||||
Returns `string` - The system color setting in RGB hexadecimal form (`#ABCDEF`).
|
Returns `string` - The system color setting in RGBA hexadecimal form (`#RRGGBBAA`).
|
||||||
See the [Windows docs][windows-colors] and the [macOS docs][macos-colors] for more details.
|
See the [Windows docs][windows-colors] and the [macOS docs][macos-colors] for more details.
|
||||||
|
|
||||||
The following colors are only available on macOS 10.14: `find-highlight`, `selected-content-background`, `separator`, `unemphasized-selected-content-background`, `unemphasized-selected-text-background`, and `unemphasized-selected-text`.
|
The following colors are only available on macOS 10.14: `find-highlight`, `selected-content-background`, `separator`, `unemphasized-selected-content-background`, `unemphasized-selected-text-background`, and `unemphasized-selected-text`.
|
||||||
|
|
|
@ -540,7 +540,7 @@ std::string SystemPreferences::GetColor(gin_helper::ErrorThrower thrower,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sysColor)
|
if (sysColor)
|
||||||
return ToRGBHex(skia::NSSystemColorToSkColor(sysColor));
|
return ToRGBAHex(skia::NSSystemColorToSkColor(sysColor));
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -133,7 +133,7 @@ std::string SystemPreferences::GetColor(gin_helper::ErrorThrower thrower,
|
||||||
});
|
});
|
||||||
|
|
||||||
if (const auto* iter = Lookup.find(color); iter != Lookup.end())
|
if (const auto* iter = Lookup.find(color); iter != Lookup.end())
|
||||||
return ToRGBHex(color_utils::GetSysSkColor(iter->second));
|
return ToRGBAHex(color_utils::GetSysSkColor(iter->second));
|
||||||
|
|
||||||
thrower.ThrowError("Unknown color: " + color);
|
thrower.ThrowError("Unknown color: " + color);
|
||||||
return "";
|
return "";
|
||||||
|
|
|
@ -17,8 +17,8 @@ describe('systemPreferences module', () => {
|
||||||
}).to.throw('Unknown color: not-a-color');
|
}).to.throw('Unknown color: not-a-color');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('returns a hex RGB color string', () => {
|
it('returns a hex RGBA color string', () => {
|
||||||
expect(systemPreferences.getColor('window')).to.match(/^#[0-9A-F]{6}$/i);
|
expect(systemPreferences.getColor('window')).to.match(/^#[0-9A-F]{8}$/i);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue