201 lines
3.8 KiB
JavaScript
201 lines
3.8 KiB
JavaScript
var leftHalf = slate.operation("move", {
|
|
x: "screenOriginX",
|
|
y: "screenOriginY",
|
|
width: "screenSizeX/2",
|
|
height: "screenSizeY"
|
|
});
|
|
|
|
var rightHalf = slate.operation("move", {
|
|
x: "screenOriginX+screenSizeX/2",
|
|
y: "screenOriginY",
|
|
width: "screenSizeX/2",
|
|
height: "screenSizeY"
|
|
});
|
|
|
|
|
|
var topHalf = slate.operation("move", {
|
|
x: "screenOriginX",
|
|
y: "screenOriginY",
|
|
width: "screenSizeX",
|
|
height: "screenSizeY/2"
|
|
});
|
|
|
|
var bottomHalf = slate.operation("move", {
|
|
x: "screenOriginX",
|
|
y: "screenOriginY+screenSizeY/2",
|
|
width: "screenSizeX",
|
|
height: "screenSizeY/2"
|
|
});
|
|
|
|
var full = slate.operation("move", {
|
|
x: "screenOriginX",
|
|
y: "screenOriginY",
|
|
width: "screenSizeX",
|
|
height: "screenSizeY"
|
|
});
|
|
|
|
var moveScreen0 = slate.operation("throw", {
|
|
screen: "0"
|
|
});
|
|
|
|
var moveScreen1 = slate.operation("throw", {
|
|
screen: "1"
|
|
});
|
|
|
|
var moveScreen2 = slate.operation("throw", {
|
|
screen: "2"
|
|
});
|
|
|
|
var moveScreen3 = slate.operation("throw", {
|
|
screen: "3"
|
|
});
|
|
|
|
|
|
slate.bind("down:cmd,alt", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
win.doOperation(bottomHalf);
|
|
});
|
|
|
|
|
|
slate.bind("up:cmd,alt", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
win.doOperation(topHalf);
|
|
});
|
|
|
|
slate.bind("left:cmd,alt", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
win.doOperation(leftHalf);
|
|
});
|
|
|
|
slate.bind("right:cmd,alt", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
win.doOperation(rightHalf);
|
|
});
|
|
|
|
slate.bind("left:ctrl,alt,cmd", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
|
|
var screen = win.screen().id() - 1;
|
|
|
|
if(screen < 0){
|
|
screen = 3
|
|
}
|
|
slate.log(screen);
|
|
var op = slate.operation("throw", {
|
|
screen: screen.toString()
|
|
});
|
|
win.doOperation(op);
|
|
|
|
});
|
|
|
|
slate.bind("right:ctrl,alt,cmd", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
|
|
var screen = win.screen().id() + 1;
|
|
|
|
if(screen > 3){
|
|
screen = 0
|
|
}
|
|
slate.log(screen);
|
|
var op = slate.operation("throw", {
|
|
screen: screen.toString()
|
|
});
|
|
win.doOperation(op);
|
|
|
|
});
|
|
|
|
|
|
slate.bind("f:cmd,alt", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
win.doOperation(full);
|
|
});
|
|
|
|
slate.bind("0:cmd,alt", function (win) {
|
|
if (!win) {
|
|
return;
|
|
}
|
|
win.doOperation(moveScreen0);
|
|
});
|
|
|
|
|
|
slate.config("orderScreensLeftToRight", true);
|
|
|
|
|
|
|
|
|
|
|
|
var screen0Top = slate.operation("move",{
|
|
x: "screenOriginX-5",
|
|
y: "screenOriginY",
|
|
width: "screenSizeX-5",
|
|
height: "screenSizeY/2",
|
|
screen: "0"
|
|
});
|
|
var screen0Bottom = slate.operation("move",{
|
|
x: "screenOriginX-5",
|
|
y: "screenOriginY+screenSizeY/2",
|
|
width: "screenSizeX-5",
|
|
height: "screenSizeY/2",
|
|
screen: "0"
|
|
});
|
|
var fourMonitorLayout = slate.layout("fourMonitor", {
|
|
"Slack": {
|
|
"operations": [screen0Top],
|
|
"main-first": true,
|
|
"ignore-fail":true,
|
|
"repeat" : true
|
|
},
|
|
"HipChat": {
|
|
"operations": [screen0Top],
|
|
"main-first": true,
|
|
"ignore-fail":true,
|
|
"repeat" : true
|
|
},
|
|
"Microsoft Outlook": {
|
|
"operations":[screen0Bottom],
|
|
"main-first": true,
|
|
"ignore-fail":true,
|
|
"repeat": true
|
|
},
|
|
"VMware Fusion": {
|
|
"operations": [moveScreen1, full],
|
|
"main-first": true,
|
|
"ignore-fail":true,
|
|
"repeat" : true
|
|
}
|
|
|
|
});
|
|
|
|
slate.bind("a:ctrl,alt,cmd", slate.operation("layout", {
|
|
name: fourMonitorLayout
|
|
}));
|
|
|
|
|
|
//slate.default(["0X0","2880x1800","1080x1920","1920x1080"], fourMonitorLayout);
|
|
slate.default(4, fourMonitorLayout);
|
|
|
|
if(slate.screenCount() == 4){
|
|
slate.operation("layout", {
|
|
name: fourMonitorLayout
|
|
}).run()
|
|
}
|
|
|
|
slate.log("screen count " + slate.screenCount());
|
|
slate.eachScreen(function(screenObject) {
|
|
slate.log(screenObject.id()+" "+JSON.stringify(screenObject.rect()));
|
|
});
|