mirror of
https://github.com/hydralauncher/hydra.git
synced 2026-01-31 23:01:02 +00:00
Feat: Custom Games
This commit is contained in:
@@ -65,36 +65,61 @@ app.whenReady().then(async () => {
|
||||
});
|
||||
|
||||
protocol.handle("gradient", (request) => {
|
||||
const gradientCss = decodeURIComponent(request.url.slice("gradient:".length));
|
||||
|
||||
const match = gradientCss.match(/linear-gradient\(([^,]+),\s*([^,]+),\s*([^)]+)\)/);
|
||||
|
||||
const gradientCss = decodeURIComponent(
|
||||
request.url.slice("gradient:".length)
|
||||
);
|
||||
|
||||
const match = gradientCss.match(
|
||||
/linear-gradient\(([^,]+),\s*([^,]+),\s*([^)]+)\)/
|
||||
);
|
||||
|
||||
let direction = "45deg";
|
||||
let color1 = '#4a90e2';
|
||||
let color2 = '#7b68ee';
|
||||
|
||||
let color1 = "#4a90e2";
|
||||
let color2 = "#7b68ee";
|
||||
|
||||
if (match) {
|
||||
direction = match[1].trim();
|
||||
color1 = match[2].trim();
|
||||
color2 = match[3].trim();
|
||||
}
|
||||
|
||||
let x1 = "0%", y1 = "0%", x2 = "100%", y2 = "100%";
|
||||
|
||||
|
||||
let x1 = "0%",
|
||||
y1 = "0%",
|
||||
x2 = "100%",
|
||||
y2 = "100%";
|
||||
|
||||
if (direction === "to right") {
|
||||
x1 = "0%"; y1 = "0%"; x2 = "100%"; y2 = "0%";
|
||||
x1 = "0%";
|
||||
y1 = "0%";
|
||||
x2 = "100%";
|
||||
y2 = "0%";
|
||||
} else if (direction === "to bottom") {
|
||||
x1 = "0%"; y1 = "0%"; x2 = "0%"; y2 = "100%";
|
||||
x1 = "0%";
|
||||
y1 = "0%";
|
||||
x2 = "0%";
|
||||
y2 = "100%";
|
||||
} else if (direction === "45deg") {
|
||||
x1 = "0%"; y1 = "100%"; x2 = "100%"; y2 = "0%";
|
||||
x1 = "0%";
|
||||
y1 = "100%";
|
||||
x2 = "100%";
|
||||
y2 = "0%";
|
||||
} else if (direction === "135deg") {
|
||||
x1 = "0%"; y1 = "0%"; x2 = "100%"; y2 = "100%";
|
||||
x1 = "0%";
|
||||
y1 = "0%";
|
||||
x2 = "100%";
|
||||
y2 = "100%";
|
||||
} else if (direction === "225deg") {
|
||||
x1 = "100%"; y1 = "0%"; x2 = "0%"; y2 = "100%";
|
||||
x1 = "100%";
|
||||
y1 = "0%";
|
||||
x2 = "0%";
|
||||
y2 = "100%";
|
||||
} else if (direction === "315deg") {
|
||||
x1 = "100%"; y1 = "100%"; x2 = "0%"; y2 = "0%";
|
||||
x1 = "100%";
|
||||
y1 = "100%";
|
||||
x2 = "0%";
|
||||
y2 = "0%";
|
||||
}
|
||||
|
||||
|
||||
const svgContent = `
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="400" height="300" viewBox="0 0 400 300">
|
||||
<defs>
|
||||
@@ -106,9 +131,9 @@ app.whenReady().then(async () => {
|
||||
<rect width="100%" height="100%" fill="url(#grad)" />
|
||||
</svg>
|
||||
`;
|
||||
|
||||
|
||||
return new Response(svgContent, {
|
||||
headers: { 'Content-Type': 'image/svg+xml' }
|
||||
headers: { "Content-Type": "image/svg+xml" },
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user