workspaceThumbnails: Center thumbnails in workspace navigator
We always request a natural width based on the maximum thumbnail scale, but may very well use a smaller scale when allocating. This currently results in thumbnails being off center, fix this by distributing any extra space evenly before allocating thumbnails. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1620>
This commit is contained in:
parent
779e66ae88
commit
de299f0a90
@ -1302,6 +1302,13 @@ var ThumbnailsBox = GObject.registerClass({
|
|||||||
const thumbnailWidth = Math.round(thumbnailHeight * ratio);
|
const thumbnailWidth = Math.round(thumbnailHeight * ratio);
|
||||||
const roundedVScale = thumbnailHeight / portholeHeight;
|
const roundedVScale = thumbnailHeight / portholeHeight;
|
||||||
|
|
||||||
|
// We always request size for MAX_THUMBNAIL_SCALE, distribute
|
||||||
|
// space evently if we use smaller thumbnails
|
||||||
|
const extraWidth =
|
||||||
|
(MAX_THUMBNAIL_SCALE * portholeWidth - thumbnailWidth) * nWorkspaces;
|
||||||
|
box.x1 += Math.round(extraWidth / 2);
|
||||||
|
box.x2 -= Math.round(extraWidth / 2);
|
||||||
|
|
||||||
let indicatorValue = this._scrollAdjustment.value;
|
let indicatorValue = this._scrollAdjustment.value;
|
||||||
let indicatorUpperWs = Math.ceil(indicatorValue);
|
let indicatorUpperWs = Math.ceil(indicatorValue);
|
||||||
let indicatorLowerWs = Math.floor(indicatorValue);
|
let indicatorLowerWs = Math.floor(indicatorValue);
|
||||||
|
Loading…
Reference in New Issue
Block a user