boxpointer: Make drawing arrow background optional
We currently use get_color(), which assumes the color exists in the stylesheet (and prints a warning if it doesn't). Switch to lookup_color() and skip filling the background if no such colors exits. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2172>
This commit is contained in:
parent
738f9c3b04
commit
514558409c
@ -278,8 +278,6 @@ var BoxPointer = GObject.registerClass({
|
|||||||
let halfBorder = borderWidth / 2;
|
let halfBorder = borderWidth / 2;
|
||||||
let halfBase = Math.floor(base / 2);
|
let halfBase = Math.floor(base / 2);
|
||||||
|
|
||||||
let backgroundColor = themeNode.get_color('-arrow-background-color');
|
|
||||||
|
|
||||||
let [width, height] = area.get_surface_size();
|
let [width, height] = area.get_surface_size();
|
||||||
let [boxWidth, boxHeight] = [width, height];
|
let [boxWidth, boxHeight] = [width, height];
|
||||||
if (this._arrowSide == St.Side.TOP || this._arrowSide == St.Side.BOTTOM)
|
if (this._arrowSide == St.Side.TOP || this._arrowSide == St.Side.BOTTOM)
|
||||||
@ -422,8 +420,12 @@ var BoxPointer = GObject.registerClass({
|
|||||||
Math.PI, 3 * Math.PI / 2);
|
Math.PI, 3 * Math.PI / 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
Clutter.cairo_set_source_color(cr, backgroundColor);
|
const [hasColor, bgColor] =
|
||||||
cr.fillPreserve();
|
themeNode.lookup_color('-arrow-background-color', false);
|
||||||
|
if (hasColor) {
|
||||||
|
Clutter.cairo_set_source_color(cr, bgColor);
|
||||||
|
cr.fillPreserve();
|
||||||
|
}
|
||||||
|
|
||||||
if (borderWidth > 0) {
|
if (borderWidth > 0) {
|
||||||
let borderColor = themeNode.get_color('-arrow-border-color');
|
let borderColor = themeNode.get_color('-arrow-border-color');
|
||||||
|
Loading…
Reference in New Issue
Block a user