Skip to content

workspacesView: Clamp overviewAdjustment for ExtraWorkspaceView

ExtraWorkspaceView is used when workspaces-only-on-primary is on for secondary monitor, and it still works like window picker when overviewAdjustment is APP_GRID. However, WorkspaceLayout would try to set clip when current state is APP_GRID for all workspaces, and thus close buttons and labels near the boundary are clipped unexpectedly.

This commit creates a copy of overviewAdjustment in ExtraWorkspaceView, and syncs it with the original one, with its value clampped between HIDDEN and WINDOW_PICKER.

Fixes: #5316


I'm not very familiar with gnome-shell codebase and it takes me a lot of time to debug this issue, so suggestions are very appreciated. And another possible fix is to not clip when this._metaWorkspace is null in WorkspaceLayout's vfunc_allocate(), but it sounds a bit weird (what does _metaWorkspace === null mean actually?).

Also, this MR slightly changes the UI of ExtraWorkspaceView in app grid mode (the workspace would not get a bit larger), so I doubt if this fix could be in GNOME 46 and backported...

Merge request reports