MCPcopy Index your code
hub / github.com/paperwm/PaperWM / initWorkspaceStack

Method initWorkspaceStack

tiling.js:2949–3032  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2947 }
2948
2949 initWorkspaceStack() {
2950 if (inPreview) {
2951 return;
2952 }
2953
2954 inPreview = PreviewMode.STACK;
2955
2956 // Always show the topbar when using the workspace stack
2957 Topbar.fixTopBar();
2958 const scale = 0.9;
2959 let space = this.activeSpace;
2960 let mru = [...this.stack];
2961 this.monitors.forEach(space => mru.splice(mru.indexOf(space), 1));
2962 mru = [space, ...mru];
2963
2964 if (Main.panel.statusArea.appMenu)
2965 Main.panel.statusArea.appMenu.container.hide();
2966 let monitor = space.monitor;
2967 this.selectedSpace = space;
2968
2969 this.forEach(s => s.setSpaceTopbarElementsVisible(true));
2970 let cloneParent = space.clip.get_parent();
2971 mru.forEach((space, i) => {
2972 space.startAnimate();
2973
2974 if (space.length !== 0) {
2975 let scaleX = monitor.width / space.width;
2976 let scaleY = monitor.height / space.height;
2977 space.clip.set_scale(scaleX, scaleY);
2978 space.clip.set_position(monitor.x, monitor.y);
2979 } else {
2980 space.setMonitor(monitor);
2981 }
2982
2983 Easer.removeEase(space.border);
2984 space.border.opacity = 255;
2985 space.border.show();
2986
2987 let h;
2988 if (i === 0) {
2989 h = 0;
2990 space.show();
2991 } else if (i === 1) {
2992 h = StackPositions.up;
2993 space.show();
2994 } else if (i === 2) {
2995 h = StackPositions.top;
2996 space.show();
2997 } else {
2998 h = StackPositions.top;
2999 space.hide();
3000 }
3001
3002 space.actor.set_position(0, space.height * h);
3003
3004 space.actor.scale_y = scale - i * 0.01;
3005 space.actor.scale_x = scale - i * 0.01;
3006

Callers 2

selectStackSpaceMethod · 0.95
updateVerticalFunction · 0.80

Calls 6

indexOfMethod · 0.80
startAnimateMethod · 0.80
setMonitorMethod · 0.80
hideMethod · 0.45
showMethod · 0.45

Tested by

no test coverage detected