iconGrid: Downscale icon size when comparing to defaults
The return value of st_theme_node_lookup_length() is scaled according to the scale factor. IconGrid.ICON_SIZE is not. However, when BaseIcon tries to fetch the CSS value for "icon-size" (which returns a scaled value), it uses it as-is, mixing the two coordinate systems. Use a single coordinate system (unscaled sizes) in IconGrid.BaseIcon. https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1175
This commit is contained in:
parent
fbe2e30f38
commit
402fd8ec29
@ -114,8 +114,11 @@ class BaseIcon extends St.Bin {
|
|||||||
if (this._setSizeManually) {
|
if (this._setSizeManually) {
|
||||||
size = this.iconSize;
|
size = this.iconSize;
|
||||||
} else {
|
} else {
|
||||||
|
const { scaleFactor } =
|
||||||
|
St.ThemeContext.get_for_stage(global.stage);
|
||||||
|
|
||||||
let [found, len] = node.lookup_length('icon-size', false);
|
let [found, len] = node.lookup_length('icon-size', false);
|
||||||
size = found ? len : ICON_SIZE;
|
size = found ? len / scaleFactor : ICON_SIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.iconSize == size && this._iconBin.child)
|
if (this.iconSize == size && this._iconBin.child)
|
||||||
|
Loading…
Reference in New Issue
Block a user