From b8cc3e139ccd7e5ff9dabdf25b191ed158696e62 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Fri, 23 Oct 2020 17:46:16 +0530
Subject: [PATCH 01/33] =?UTF-8?q?=F0=9F=93=A6=20python=20packages?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
requirements.txt | 2 ++
1 file changed, 2 insertions(+)
create mode 100644 requirements.txt
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..4c7f1ea
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+clickgen==1.1.7
+Pillow==8.0.1
From 17d5f191aeb5a312333c1ea6124fa261cc364701 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sat, 24 Oct 2020 09:35:17 +0530
Subject: [PATCH 02/33] =?UTF-8?q?=F0=9F=93=83=20Scripts=20init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
package.json | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/package.json b/package.json
index 14a33a3..a1e9bef 100644
--- a/package.json
+++ b/package.json
@@ -7,6 +7,15 @@
"author": "Kaiz Khatri",
"license": "GPL-3.0",
"private": true,
+ "scripts": {
+ "clean": "rm -rf bitmaps themes",
+ "dev": "nodemon src/index.ts",
+ "watch": "nodemon --inspect src/index.ts",
+ "py_install": "pip install -r requirements.txt",
+ "render": "npx ts-node src/index.ts",
+ "build": "python build.py",
+ "compile": "yarn clean && yarn render && yarn build"
+ },
"devDependencies": {
"@types/pixelmatch": "^5.2.2",
"@types/pngjs": "^3.4.2",
From d2a0fccb1ea1ffe4db33ce94ea64c5e373b19ecc Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sat, 24 Oct 2020 09:38:28 +0530
Subject: [PATCH 03/33] =?UTF-8?q?=F0=9F=9A=80=20Renderer=20src=20init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/config.ts | 31 ++++++++++
src/index.ts | 124 ++++++++++++++++++++++++++++++++++++++
src/utils/getFrameName.ts | 14 +++++
src/utils/htmlTemplate.ts | 19 ++++++
src/utils/matchImages.ts | 19 ++++++
src/utils/saveFrames.ts | 16 +++++
6 files changed, 223 insertions(+)
create mode 100644 src/config.ts
create mode 100644 src/index.ts
create mode 100644 src/utils/getFrameName.ts
create mode 100644 src/utils/htmlTemplate.ts
create mode 100644 src/utils/matchImages.ts
create mode 100644 src/utils/saveFrames.ts
diff --git a/src/config.ts b/src/config.ts
new file mode 100644
index 0000000..843b7b5
--- /dev/null
+++ b/src/config.ts
@@ -0,0 +1,31 @@
+import { resolve } from "path";
+import { readdirSync, existsSync } from "fs";
+
+// Source Directory
+const svgsDir = resolve(__dirname, "svg");
+if (!existsSync(svgsDir)) {
+ console.log("Source .svg files not found");
+}
+
+const staticCursorsDir = resolve(svgsDir, "static");
+const animatedCursorsDir = resolve(svgsDir, "animated");
+
+// Out Directory
+const bitmapsDir = resolve(__dirname, "../", "bitmaps");
+
+// Cursors
+const staticCursors = readdirSync(staticCursorsDir).map((f) =>
+ resolve(staticCursorsDir, f)
+);
+const animatedCursors = readdirSync(animatedCursorsDir).map((f) =>
+ resolve(animatedCursorsDir, f)
+);
+
+// Animated Config
+const animatedClip = {
+ x: 4,
+ y: 4,
+ width: 200,
+ height: 200,
+};
+export { staticCursors, animatedCursors, bitmapsDir, animatedClip };
diff --git a/src/index.ts b/src/index.ts
new file mode 100644
index 0000000..5007114
--- /dev/null
+++ b/src/index.ts
@@ -0,0 +1,124 @@
+import fs from "fs";
+import path from "path";
+import puppeteer from "puppeteer";
+
+import { generateRenderTemplate } from "./utils/htmlTemplate";
+import {
+ staticCursors,
+ bitmapsDir,
+ animatedCursors,
+ animatedClip,
+} from "./config";
+import { matchImages } from "./utils/matchImages";
+import { saveFrames, Frames } from "./utils/saveFrames";
+import { getFrameName } from "./utils/getFrameName";
+
+const main = async () => {
+ const browser = await puppeteer.launch({
+ ignoreDefaultArgs: [" --single-process ", "--no-sandbox"],
+ headless: true,
+ });
+
+ if (!fs.existsSync(bitmapsDir)) {
+ fs.mkdirSync(bitmapsDir);
+ }
+
+ try {
+ console.log("πΈ Rendering Static Cursors...");
+
+ for (let svgPath of staticCursors) {
+ const buffer = fs.readFileSync(path.resolve(svgPath), "utf8");
+ if (!buffer) throw new Error(`${svgPath} File Read error`);
+
+ // Generating HTML Template
+ const data = buffer.toString();
+ const template = generateRenderTemplate(data);
+
+ // config
+ const bitmapName = `${path.basename(svgPath, ".svg")}.png`;
+ const out = path.resolve(bitmapsDir, bitmapName);
+
+ // Render
+ const page = await browser.newPage();
+ await page.setContent(template);
+
+ await page.waitForSelector("#container");
+ const svgElement = await page.$("#container svg");
+ if (!svgElement) throw new Error("svg element not found");
+ await svgElement.screenshot({ omitBackground: true, path: out });
+
+ await page.close();
+ }
+
+ console.log("π₯ Rendering Animated Cursors...");
+
+ for (let svgPath of animatedCursors) {
+ const buffer = fs.readFileSync(svgPath, "utf8");
+ if (!buffer) throw new Error(`${svgPath} File Read error`);
+
+ // Generating HTML Template
+ const data = buffer.toString();
+ const template = generateRenderTemplate(data);
+
+ const page = await browser.newPage();
+ await page.setContent(template, { waitUntil: "networkidle2" });
+
+ await page.waitForSelector("#container");
+ const svgElement = await page.$("#container svg");
+ if (!svgElement) throw new Error("svg element not found");
+
+ // Render Config
+ let index = 1;
+ let breakRendering = false;
+ const frames: Frames = {};
+ const firstKey = getFrameName(index, svgPath);
+
+ console.log("Rendering", path.basename(svgPath), "...");
+ console.log(firstKey);
+
+ // 1st Frame
+ frames[firstKey] = {
+ buffer: await svgElement.screenshot({
+ omitBackground: true,
+ clip: animatedClip,
+ encoding: "binary",
+ }),
+ };
+
+ // Pushing frames until it match to 1st frame
+ index++;
+ while (!breakRendering) {
+ const newFrame = await svgElement.screenshot({
+ omitBackground: true,
+ clip: animatedClip,
+ encoding: "binary",
+ });
+ const key = getFrameName(index, svgPath);
+ console.log(key);
+ const diff = matchImages({
+ img1Buff: frames[firstKey].buffer,
+ img2Buff: newFrame,
+ });
+
+ if (!(diff < 700)) {
+ frames[key] = { buffer: newFrame };
+ } else {
+ breakRendering = true;
+ }
+ index++;
+ }
+
+ saveFrames(frames);
+
+ await page.close();
+ }
+
+ console.log(`\nBitmaps stored at ${bitmapsDir}\n\nπ Render Done.`);
+ process.exit(0);
+ } catch (error) {
+ console.error(error);
+ process.exit(1);
+ }
+};
+
+main();
diff --git a/src/utils/getFrameName.ts b/src/utils/getFrameName.ts
new file mode 100644
index 0000000..5b3dfff
--- /dev/null
+++ b/src/utils/getFrameName.ts
@@ -0,0 +1,14 @@
+import path from "path";
+
+export const frameNumber = (index: number, endIndex: number) => {
+ let result = "" + index;
+ while (result.length < endIndex) {
+ result = "0" + result;
+ }
+ return result;
+};
+
+export const getFrameName = (index: number, fileName: string) => {
+ const frame = frameNumber(index, 2);
+ return `${path.basename(fileName, ".svg")}-${frame}.png`;
+};
diff --git a/src/utils/htmlTemplate.ts b/src/utils/htmlTemplate.ts
new file mode 100644
index 0000000..05ea0cb
--- /dev/null
+++ b/src/utils/htmlTemplate.ts
@@ -0,0 +1,19 @@
+export const template = `
+
+
+
+
+
+ Eggy Render Template
+
+
+
+
+
+
+
+
+`;
+
+export const generateRenderTemplate = (svg: string) =>
+ template.replace("", svg);
diff --git a/src/utils/matchImages.ts b/src/utils/matchImages.ts
new file mode 100644
index 0000000..aceffa8
--- /dev/null
+++ b/src/utils/matchImages.ts
@@ -0,0 +1,19 @@
+import { PNG } from "pngjs";
+import pixelmatch from "pixelmatch";
+
+interface MatchImagesArgs {
+ img1Buff: Buffer;
+ img2Buff: Buffer;
+}
+
+export const matchImages = ({ img1Buff, img2Buff }: MatchImagesArgs) => {
+ const img1 = PNG.sync.read(img1Buff);
+ const img2 = PNG.sync.read(img2Buff);
+ const { width, height } = img1;
+
+ const diff = new PNG({ width, height });
+
+ return pixelmatch(img1.data, img2.data, diff.data, width, height, {
+ threshold: 0.25,
+ });
+};
diff --git a/src/utils/saveFrames.ts b/src/utils/saveFrames.ts
new file mode 100644
index 0000000..f3be527
--- /dev/null
+++ b/src/utils/saveFrames.ts
@@ -0,0 +1,16 @@
+import fs from "fs";
+import path from "path";
+import { bitmapsDir } from "../config";
+
+export interface Frames {
+ [fileName: string]: {
+ buffer: Buffer;
+ };
+}
+
+export const saveFrames = (frames: Frames) => {
+ for (let [fileName, { buffer }] of Object.entries(frames)) {
+ const out_path = path.resolve(bitmapsDir, fileName);
+ fs.writeFileSync(out_path, buffer, { encoding: "binary" });
+ }
+};
From 0787a536d44ad376cbe88c0dae7c5a7907fdd9ad Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sat, 24 Oct 2020 09:40:31 +0530
Subject: [PATCH 04/33] =?UTF-8?q?=F0=9F=94=A7=20Typescript=20config?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
tsconfig.json | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
create mode 100644 tsconfig.json
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 0000000..a26a563
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,18 @@
+{
+ "compilerOptions": {
+ "target": "es2017",
+ "module": "commonjs",
+ "lib": ["es2015", "dom"],
+ "outDir": "dist",
+ "typeRoots": ["node_modules/@types"],
+ "strict": true,
+ "noUnusedLocals": true,
+ "noUnusedParameters": true,
+ "noImplicitReturns": true,
+ "resolveJsonModule": true,
+ "noFallthroughCasesInSwitch": true,
+ "esModuleInterop": true
+ },
+ "include": ["src/**/*", "node_modules/@types/puppeteer/index.d.ts"],
+ "exclude": ["node_modules", "**/*.test.ts"]
+}
From 8a63ea74d332989f2472a6b353260f0287b7e3fe Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sat, 24 Oct 2020 09:40:47 +0530
Subject: [PATCH 05/33] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Devel?=
=?UTF-8?q?opment=20demon=20config?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
nodemon.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 nodemon.json
diff --git a/nodemon.json b/nodemon.json
new file mode 100644
index 0000000..cde9605
--- /dev/null
+++ b/nodemon.json
@@ -0,0 +1,13 @@
+{
+ "restartable": "rs",
+ "ignore": [".git", "node_modules/**/node_modules"],
+ "verbose": true,
+ "execMap": {
+ "ts": "node --require ts-node/register"
+ },
+ "watch": ["src/"],
+ "env": {
+ "NODE_ENV": "development"
+ },
+ "ext": "js,json,ts"
+}
From 340bdff00425f1d1fca96fbddf6b277909751e94 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 09:59:48 +0530
Subject: [PATCH 06/33] =?UTF-8?q?=F0=9F=9A=80=20Init=20cursor=20builder?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
build.py | 19 +++++++++
config.py | 46 +++++++++++++++++++++
helper.py | 61 ++++++++++++++++++++++++++++
hotspots.json | 102 +++++++++++++++++++++++++++++++++++++++++++++++
log.py | 6 +++
requirements.txt | 2 +-
6 files changed, 235 insertions(+), 1 deletion(-)
create mode 100644 build.py
create mode 100644 config.py
create mode 100644 helper.py
create mode 100644 hotspots.json
create mode 100644 log.py
diff --git a/build.py b/build.py
new file mode 100644
index 0000000..7679079
--- /dev/null
+++ b/build.py
@@ -0,0 +1,19 @@
+import json
+import log
+from clickgen import build_cursor_theme
+
+from config import name, sizes, delay, bitmaps_dir, temp_folder
+from helper import init_build, pack_it
+
+
+def build() -> None:
+ init_build()
+ with open('./hotspots.json', 'r') as hotspot_file:
+ hotspots = json.loads(hotspot_file.read())
+ build_cursor_theme(name, image_dir=bitmaps_dir,
+ cursor_sizes=sizes, out_path=temp_folder, hotspots=hotspots, archive=False, delay=delay)
+ pack_it()
+
+
+if __name__ == "__main__":
+ build()
diff --git a/config.py b/config.py
new file mode 100644
index 0000000..f237923
--- /dev/null
+++ b/config.py
@@ -0,0 +1,46 @@
+import tempfile
+import json
+
+# Build Config
+delay = 50
+name = "Google-Dot"
+sizes = [22, 24, 28, 32, 40, 48, 56, 64, 72, 80, 88, 96]
+
+bitmaps_dir = "./bitmaps"
+package_dir = "./themes"
+temp_folder = tempfile.mkdtemp()
+
+# Cleanup Configs
+x11_out = name
+win_out = name + "-Windows"
+
+# getting author name
+with open("./package.json") as f:
+ data = json.loads(f.read())
+ author = data["author"]
+
+# Windows Cursors Config
+windows_cursors = {
+ "left_ptr_watch.ani": "AppStarting.ani",
+ "left_ptr.cur": "Arrow.cur",
+ "crosshair.cur": "Cross.cur",
+ "hand2.cur": "Hand.cur",
+ "pencil.cur": "Handwriting.cur",
+ "dnd-ask.cur": "Help.cur",
+ "xterm.cur": "IBeam.cur",
+ "circle.cur": "NO.cur",
+ "all-scroll.cur": "SizeAll.cur",
+ "bd_double_arrow.cur": "SizeNWSE.cur",
+ "sb_v_double_arrow.cur": "SizeNS.cur",
+ "fd_double_arrow.cur": "SizeNESW.cur",
+ "sb_h_double_arrow.cur": "SizeWE.cur",
+ "sb_up_arrow.cur": "UpArrow.cur",
+ "wait.ani": "Wait.ani",
+}
+
+# Windows install.inf file content
+with open("./scripts/windows.inf") as f:
+ data = f.read()
+ window_install_inf_content = data.replace(
+ "", name + " Cursors"
+ ).replace("", author)
diff --git a/helper.py b/helper.py
new file mode 100644
index 0000000..cdf4c20
--- /dev/null
+++ b/helper.py
@@ -0,0 +1,61 @@
+import shutil
+import json
+import sys
+
+from config import name, temp_folder, bitmaps_dir, win_out, x11_out, window_install_inf_content, windows_cursors, package_dir
+from os import path, listdir, rename, remove
+
+
+x11_out_dir = path.join(package_dir, x11_out)
+win_out_dir = path.join(package_dir, win_out)
+
+
+def window_bundle() -> None:
+ # Remove & Rename cursors
+ # If Key found => Rename else Remove
+ for cursor in listdir(win_out_dir):
+ old_path = path.join(win_out_dir, cursor)
+
+ try:
+ new_path = path.join(win_out_dir, windows_cursors[cursor])
+ rename(old_path, new_path)
+ except KeyError:
+ remove(old_path)
+
+ # creating install.inf file
+ install_inf_path = path.join(win_out_dir, "install.inf")
+ with open(install_inf_path, "w") as file:
+ file.write(window_install_inf_content)
+
+
+def init_build() -> None:
+ """
+ Print build version.
+ Remove previously built packages && Check Bitmaps.
+ """
+ with open("./package.json", "r") as package_file:
+ data = json.loads(package_file.read())
+ version = data['version']
+ print("β‘ Apple Cursor Version %s" % version)
+
+ # cleanup old packages
+ if path.exists(package_dir):
+ shutil.rmtree(package_dir)
+
+ # Checking Bitmaps directory
+ if not path.exists(bitmaps_dir):
+ print(
+ "β BITMAPS NOT FOUND.\n\n`yarn install && yarn render` to Generates Bitmaps")
+ sys.exit(1)
+
+
+def pack_it() -> None:
+ """
+ Create Crisp π¦ Packages for Windows & X11 Cursor Theme.
+ """
+ # Rename directory
+ shutil.move(path.join(temp_folder, name, "x11"), x11_out_dir)
+ shutil.move(path.join(temp_folder, name, "win"), win_out_dir)
+
+ # create install.inf file in Windows Theme
+ window_bundle()
diff --git a/hotspots.json b/hotspots.json
new file mode 100644
index 0000000..adbba3b
--- /dev/null
+++ b/hotspots.json
@@ -0,0 +1,102 @@
+{
+ "all_scroll": { "xhot": 100, "yhot": 100 },
+
+ "bottom_left_corner": { "xhot": 100, "yhot": 100 },
+ "fd_double_arrow": { "xhot": 100, "yhot": 100 },
+ "top_right_corner": { "xhot": 100, "yhot": 100 },
+
+ "bottom_right_corner": { "xhot": 100, "yhot": 100 },
+ "bd_double_arrow": { "xhot": 100, "yhot": 100 },
+ "top_left_corner": { "xhot": 100, "yhot": 100 },
+
+ "bottom_tee": { "xhot": 141, "yhot": 99 },
+
+ "center_ptr": { "xhot": 61, "yhot": 100 },
+
+ "circle": { "xhot": 47, "yhot": 39 },
+ "crossed_circle": { "xhot": 47, "yhot": 39 },
+ "dnd_no_drop": { "xhot": 47, "yhot": 39 },
+
+ "context_menu": { "xhot": 61, "yhot": 58 },
+
+ "copy": { "xhot": 47, "yhot": 39 },
+ "dnd_copy": { "xhot": 47, "yhot": 39 },
+
+ "cross": { "xhot": 100, "yhot": 100 },
+ "tcross": { "xhot": 100, "yhot": 100 },
+
+ "crosshair": { "xhot": 100, "yhot": 100 },
+
+ "dotbox": { "xhot": 100, "yhot": 100 },
+
+ "hand1": { "xhot": 94, "yhot": 105 },
+
+ "hand2": { "xhot": 66, "yhot": 34 },
+
+ "left_ptr": { "xhot": 68, "yhot": 41 },
+
+ "left_side": { "xhot": 100, "yhot": 100 },
+ "right_side": { "xhot": 100, "yhot": 100 },
+
+ "left_tee": { "xhot": 100, "yhot": 58 },
+
+ "link": { "xhot": 61, "yhot": 105 },
+ "dnd_link": { "xhot": 61, "yhot": 105 },
+
+ "ll_angle": { "xhot": 141, "yhot": 58 },
+
+ "lr_angle": { "xhot": 141, "yhot": 138 },
+
+ "move": { "xhot": 80, "yhot": 106 },
+ "dnd_move": { "xhot": 80, "yhot": 106 },
+ "dnd_none": { "xhot": 80, "yhot": 106 },
+ "grabbing": { "xhot": 80, "yhot": 106 },
+ "pointer_move": { "xhot": 80, "yhot": 106 },
+
+ "pencil": { "xhot": 141, "yhot": 58 },
+
+ "plus": { "xhot": 100, "yhot": 100 },
+
+ "question_arrow": { "xhot": 105, "yhot": 105 },
+ "dnd_ask": { "xhot": 105, "yhot": 105 },
+
+ "right_ptr": { "xhot": 61, "yhot": 138 },
+
+ "right_tee": { "xhot": 100, "yhot": 138 },
+
+ "sb_down_arrow": { "xhot": 133, "yhot": 99 },
+
+ "sb_h_double_arrow": { "xhot": 100, "yhot": 100 },
+
+ "sb_left_arrow": { "xhot": 100, "yhot": 68 },
+
+ "sb_right_arrow": { "xhot": 100, "yhot": 138 },
+
+ "sb_up_arrow": { "xhot": 68, "yhot": 99 },
+
+ "sb_v_double_arrow": { "xhot": 100, "yhot": 100 },
+
+ "top_side": { "xhot": 100, "yhot": 100 },
+ "bottom_side": { "xhot": 100, "yhot": 100 },
+
+ "top_tee": { "xhot": 61, "yhot": 99 },
+
+ "ul_angle": { "xhot": 61, "yhot": 65 },
+
+ "ur_angle": { "xhot": 61, "yhot": 138 },
+
+ "vertical_text": { "xhot": 100, "yhot": 102 },
+
+ "wait": { "xhot": 104, "yhot": 105 },
+ "left_ptr_watch": { "xhot": 104, "yhot": 105 },
+
+ "wayland_cursor": { "xhot": 100, "yhot": 100 },
+
+ "x_cursor": { "xhot": 100, "yhot": 100 },
+
+ "xterm": { "xhot": 97, "yhot": 97 },
+
+ "zoom_in": { "xhot": 76, "yhot": 78 },
+
+ "zoom_out": { "xhot": 76, "yhot": 78 }
+}
diff --git a/log.py b/log.py
new file mode 100644
index 0000000..e59183c
--- /dev/null
+++ b/log.py
@@ -0,0 +1,6 @@
+#!/usr/bin/env python
+
+import logging
+
+logging.basicConfig(filename='build.log', filemode='w',
+ format='%(name)s - %(levelname)s - %(message)s', level=logging.DEBUG)
diff --git a/requirements.txt b/requirements.txt
index 4c7f1ea..dbfa3c9 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,2 +1,2 @@
clickgen==1.1.7
-Pillow==8.0.1
+Pillow<=8.0.1
From 7af8b820f42e8e600652b8fc1432d7fe6ce9471c Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 10:07:17 +0530
Subject: [PATCH 07/33] =?UTF-8?q?=F0=9F=93=A6=20Rename=20cursor=20theme?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
config.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/config.py b/config.py
index f237923..fe475cb 100644
--- a/config.py
+++ b/config.py
@@ -3,7 +3,7 @@
# Build Config
delay = 50
-name = "Google-Dot"
+name = "GoogleDot"
sizes = [22, 24, 28, 32, 40, 48, 56, 64, 72, 80, 88, 96]
bitmaps_dir = "./bitmaps"
From be75d6d2198cb0de86f6c5431ae10cc366aa1b82 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 11:59:47 +0530
Subject: [PATCH 08/33] =?UTF-8?q?=F0=9F=94=A7=20Windows=20install=20script?=
=?UTF-8?q?=20template=20init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
scripts/windows.inf | 52 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
create mode 100644 scripts/windows.inf
diff --git a/scripts/windows.inf b/scripts/windows.inf
new file mode 100644
index 0000000..0586241
--- /dev/null
+++ b/scripts/windows.inf
@@ -0,0 +1,52 @@
+[Version]
+signature="$CHICAGO$"
+ By Kaiz Khatri
+https://github.com/ful1e5/apple_cursor
+
+[DefaultInstall]
+CopyFiles = Scheme.Cur
+AddReg = Scheme.Reg
+
+[DestinationDirs]
+Scheme.Cur = 10,"%CUR_DIR%"
+
+[Scheme.Reg]
+HKCU,"Control Panel\Cursors\Schemes","%SCHEME_NAME%",,"%10%\%CUR_DIR%\%pointer%,%10%\%CUR_DIR%\%help%,%10%\%CUR_DIR%\%work%,%10%\%CUR_DIR%\%busy%,%10%\%CUR_DIR%\%Cross%,%10%\%CUR_DIR%\%Text%,%10%\%CUR_DIR%\%Hand%,%10%\%CUR_DIR%\%Unavailiable%,%10%\%CUR_DIR%\%Vert%,%10%\%CUR_DIR%\%Horz%,%10%\%CUR_DIR%\%Dgn1%,%10%\%CUR_DIR%\%Dgn2%,%10%\%CUR_DIR%\%move%,%10%\%CUR_DIR%\%alternate%,%10%\%CUR_DIR%\%link%"
+
+; -- Installed files
+
+[Scheme.Cur]
+"Arrow.cur"
+"Help.cur"
+"AppStarting.ani"
+"Wait.ani"
+"Cross.cur"
+"IBeam.cur"
+"Handwriting.cur"
+"NO.cur"
+"SizeNS.cur"
+"SizeWE.cur"
+"SizeNWSE.cur"
+"SizeNESW.cur"
+"SizeAll.cur"
+"UpArrow.cur"
+"Hand.cur"
+
+[Strings]
+CUR_DIR = "Cursors\"
+SCHEME_NAME = ""
+pointer = "Arrow.cur"
+help = "Help.cur"
+work = "AppStarting.ani"
+busy = "Wait.ani"
+cross = "Cross.cur"
+text = "IBeam.cur"
+hand = "Handwriting.cur"
+unavailiable = "NO.cur"
+vert = "SizeNS.cur"
+horz = "SizeWE.cur"
+dgn1 = "SizeNWSE.cur"
+dgn2 = "SizeNESW.cur"
+move = "SizeAll.cur"
+alternate = "UpArrow.cur"
+link = "Hand.cur"
\ No newline at end of file
From 2edc27a3847797633495384a5f350604889bff07 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 12:01:24 +0530
Subject: [PATCH 09/33] =?UTF-8?q?=F0=9F=91=B7=20Builder=20info=20updated?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
helper.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/helper.py b/helper.py
index cdf4c20..5259179 100644
--- a/helper.py
+++ b/helper.py
@@ -36,7 +36,7 @@ def init_build() -> None:
with open("./package.json", "r") as package_file:
data = json.loads(package_file.read())
version = data['version']
- print("β‘ Apple Cursor Version %s" % version)
+ print("β‘ GoogleDot Builder %s" % version)
# cleanup old packages
if path.exists(package_dir):
From a99d6be3fd4980a415ebf35a11c43ccef3d95844 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 16:59:37 +0530
Subject: [PATCH 10/33] =?UTF-8?q?=E2=84=B9=EF=B8=8F=20Cursors=20info=20add?=
=?UTF-8?q?ed?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/svg/README.md | 52 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
create mode 100644 src/svg/README.md
diff --git a/src/svg/README.md b/src/svg/README.md
new file mode 100644
index 0000000..e3d6153
--- /dev/null
+++ b/src/svg/README.md
@@ -0,0 +1,52 @@
+# Cursor Source Info
+
+## Symbolic Cursors
+
+| Preview | Source | Symbolic links | Windows Cursor name |
+| :-------------------------------------------------------: | :---------------------: | :-------------------------------------------------------------: | :--------------------------: |
+| | all_scroll.svg | `None` | `SizeAll.cur` |
+| | bottom_left_corner.svg | `fd_double_arrow.svg` `top_right_corner.svg` | `SizeNESW.cur` |
+| | bottom_right_corner.svg | `bd_double_arrow.svg` `top_left_corner.svg` | `SizeNWSE.cur` |
+| | bottom_tee.svg | `None` | |
+| | center_ptr.svg | `None` | |
+| | circle.svg | `crossed_circle.svg` `dnd_no_drop.svg` | `NO.cur` |
+| | context_menu.svg | `None` | |
+| | copy.svg | `dnd_copy.svg` | |
+| | cross.svg | `tcross.svg` | |
+| | crosshair.svg | `None` | `Cross.cur` |
+| | dotbox.svg | `None` | |
+| | hand1.svg | `None` | |
+| | hand2.svg | `None` | `Hand.cur` |
+| | left_ptr.svg | `None` | `Arrow.cur` |
+| | left_side.svg | `right_side.svg` | |
+| | left_tee.svg | `None` | |
+| | link.svg | `dnd_link.svg` | |
+| | ll_angle.svg | `None` | |
+| | lr_angle.svg | `None` | |
+| | move.svg | `dnd_move.svg` `dnd_none.svg` `grabbing.svg` `pointer_move.svg` | |
+| | pencil.svg | `None` | `Handwriting.cur` |
+| | plus.svg | `None` | |
+| | question_arrow.svg | `dnd_ask.svg` | `Help.cur` |
+| | right_ptr.svg | `None` | |
+| | right_tee.svg | `None` | |
+| | sb_down_arrow.svg | `None` | |
+| | sb_h_double_arrow.svg | `None` | `SizeWE.cur` |
+| | sb_left_arrow.svg | `None` | |
+| | sb_right_arrow.svg | `None` | |
+| | sb_up_arrow.svg | `None` | `UpArrow.cur` |
+| | sb_v_double_arrow.svg | `None` | `SizeNS.cur` |
+| | top_side.svg | `bottom_side.svg` | |
+| | top_tee.svg | `None` | |
+| | ul_angle.svg | `None` | |
+| | ur_angle.svg | `None` | |
+| | vertical_text.svg | `None` | |
+| | wait.svg | `left_ptr_watch.svg` | `AppStarting.ani` `Wait.ani` |
+| | wayland_cursor.svg | `None` | |
+| | x_cursor.svg | `None` | |
+| | xterm.svg | `None` | `IBeam.cur` |
+| | zoom_in.svg | `None` | |
+| | zoom_out.svg | `None` | |
+
+
+
+
From 963d61bcfb47ce66097035e1d017c474e9102c9f Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 17:00:02 +0530
Subject: [PATCH 11/33] =?UTF-8?q?=E2=9C=A8=20Import=20svg=20cursors=20from?=
=?UTF-8?q?=20macOSBigSur?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/svg/animated/left_ptr_watch.svg | 1 +
src/svg/animated/wait.svg | 78 ++++++++++++++++++++++++++
src/svg/static/all_scroll.svg | 1 +
src/svg/static/bd_double_arrow.svg | 1 +
src/svg/static/bottom_left_corner.svg | 11 ++++
src/svg/static/bottom_right_corner.svg | 11 ++++
src/svg/static/bottom_side.svg | 1 +
src/svg/static/bottom_tee.svg | 11 ++++
src/svg/static/center_ptr.svg | 14 +++++
src/svg/static/circle.svg | 21 +++++++
src/svg/static/context_menu.svg | 17 ++++++
src/svg/static/copy.svg | 32 +++++++++++
src/svg/static/cross.svg | 9 +++
src/svg/static/crossed_circle.svg | 22 ++++++++
src/svg/static/crosshair.svg | 15 +++++
src/svg/static/dnd_ask.svg | 1 +
src/svg/static/dnd_copy.svg | 1 +
src/svg/static/dnd_link.svg | 1 +
src/svg/static/dnd_move.svg | 1 +
src/svg/static/dnd_no_drop.svg | 20 +++++++
src/svg/static/dnd_none.svg | 1 +
src/svg/static/dotbox.svg | 11 ++++
src/svg/static/fd_double_arrow.svg | 1 +
src/svg/static/grabbing.svg | 1 +
src/svg/static/hand1.svg | 21 +++++++
src/svg/static/hand2.svg | 21 +++++++
src/svg/static/left_ptr.svg | 21 +++++++
src/svg/static/left_side.svg | 11 ++++
src/svg/static/left_tee.svg | 11 ++++
src/svg/static/link.svg | 11 ++++
src/svg/static/ll_angle.svg | 11 ++++
src/svg/static/lr_angle.svg | 11 ++++
src/svg/static/move.svg | 21 +++++++
src/svg/static/pencil.svg | 11 ++++
src/svg/static/plus.svg | 9 +++
src/svg/static/pointer_move.svg | 1 +
src/svg/static/question_arrow.svg | 13 +++++
src/svg/static/right_ptr.svg | 13 +++++
src/svg/static/right_side.svg | 1 +
src/svg/static/right_tee.svg | 11 ++++
src/svg/static/sb_down_arrow.svg | 9 +++
src/svg/static/sb_h_double_arrow.svg | 11 ++++
src/svg/static/sb_left_arrow.svg | 9 +++
src/svg/static/sb_right_arrow.svg | 9 +++
src/svg/static/sb_up_arrow.svg | 9 +++
src/svg/static/sb_v_double_arrow.svg | 11 ++++
src/svg/static/tcross.svg | 1 +
src/svg/static/top_left_corner.svg | 1 +
src/svg/static/top_right_corner.svg | 1 +
src/svg/static/top_side.svg | 11 ++++
src/svg/static/top_tee.svg | 11 ++++
src/svg/static/ul_angle.svg | 11 ++++
src/svg/static/ur_angle.svg | 11 ++++
src/svg/static/vertical_text.svg | 7 +++
src/svg/static/wayland_cursor.svg | 11 ++++
src/svg/static/x_cursor.svg | 8 +++
src/svg/static/xterm.svg | 7 +++
src/svg/static/zoom_in.svg | 15 +++++
src/svg/static/zoom_out.svg | 14 +++++
59 files changed, 648 insertions(+)
create mode 120000 src/svg/animated/left_ptr_watch.svg
create mode 100644 src/svg/animated/wait.svg
create mode 120000 src/svg/static/all_scroll.svg
create mode 120000 src/svg/static/bd_double_arrow.svg
create mode 100644 src/svg/static/bottom_left_corner.svg
create mode 100644 src/svg/static/bottom_right_corner.svg
create mode 120000 src/svg/static/bottom_side.svg
create mode 100644 src/svg/static/bottom_tee.svg
create mode 100644 src/svg/static/center_ptr.svg
create mode 100644 src/svg/static/circle.svg
create mode 100644 src/svg/static/context_menu.svg
create mode 100644 src/svg/static/copy.svg
create mode 100644 src/svg/static/cross.svg
create mode 100644 src/svg/static/crossed_circle.svg
create mode 100644 src/svg/static/crosshair.svg
create mode 120000 src/svg/static/dnd_ask.svg
create mode 120000 src/svg/static/dnd_copy.svg
create mode 120000 src/svg/static/dnd_link.svg
create mode 120000 src/svg/static/dnd_move.svg
create mode 100644 src/svg/static/dnd_no_drop.svg
create mode 120000 src/svg/static/dnd_none.svg
create mode 100644 src/svg/static/dotbox.svg
create mode 120000 src/svg/static/fd_double_arrow.svg
create mode 120000 src/svg/static/grabbing.svg
create mode 100644 src/svg/static/hand1.svg
create mode 100644 src/svg/static/hand2.svg
create mode 100644 src/svg/static/left_ptr.svg
create mode 100644 src/svg/static/left_side.svg
create mode 100644 src/svg/static/left_tee.svg
create mode 100644 src/svg/static/link.svg
create mode 100644 src/svg/static/ll_angle.svg
create mode 100644 src/svg/static/lr_angle.svg
create mode 100644 src/svg/static/move.svg
create mode 100644 src/svg/static/pencil.svg
create mode 100644 src/svg/static/plus.svg
create mode 120000 src/svg/static/pointer_move.svg
create mode 100644 src/svg/static/question_arrow.svg
create mode 100644 src/svg/static/right_ptr.svg
create mode 120000 src/svg/static/right_side.svg
create mode 100644 src/svg/static/right_tee.svg
create mode 100644 src/svg/static/sb_down_arrow.svg
create mode 100644 src/svg/static/sb_h_double_arrow.svg
create mode 100644 src/svg/static/sb_left_arrow.svg
create mode 100644 src/svg/static/sb_right_arrow.svg
create mode 100644 src/svg/static/sb_up_arrow.svg
create mode 100644 src/svg/static/sb_v_double_arrow.svg
create mode 120000 src/svg/static/tcross.svg
create mode 120000 src/svg/static/top_left_corner.svg
create mode 120000 src/svg/static/top_right_corner.svg
create mode 100644 src/svg/static/top_side.svg
create mode 100644 src/svg/static/top_tee.svg
create mode 100644 src/svg/static/ul_angle.svg
create mode 100644 src/svg/static/ur_angle.svg
create mode 100644 src/svg/static/vertical_text.svg
create mode 100644 src/svg/static/wayland_cursor.svg
create mode 100644 src/svg/static/x_cursor.svg
create mode 100644 src/svg/static/xterm.svg
create mode 100644 src/svg/static/zoom_in.svg
create mode 100644 src/svg/static/zoom_out.svg
diff --git a/src/svg/animated/left_ptr_watch.svg b/src/svg/animated/left_ptr_watch.svg
new file mode 120000
index 0000000..89f76d4
--- /dev/null
+++ b/src/svg/animated/left_ptr_watch.svg
@@ -0,0 +1 @@
+wait.svg
\ No newline at end of file
diff --git a/src/svg/animated/wait.svg b/src/svg/animated/wait.svg
new file mode 100644
index 0000000..4c2f3ba
--- /dev/null
+++ b/src/svg/animated/wait.svg
@@ -0,0 +1,78 @@
+
\ No newline at end of file
diff --git a/src/svg/static/all_scroll.svg b/src/svg/static/all_scroll.svg
new file mode 120000
index 0000000..37362fe
--- /dev/null
+++ b/src/svg/static/all_scroll.svg
@@ -0,0 +1 @@
+move.svg
\ No newline at end of file
diff --git a/src/svg/static/bd_double_arrow.svg b/src/svg/static/bd_double_arrow.svg
new file mode 120000
index 0000000..a3a3e2d
--- /dev/null
+++ b/src/svg/static/bd_double_arrow.svg
@@ -0,0 +1 @@
+bottom_right_corner.svg
\ No newline at end of file
diff --git a/src/svg/static/bottom_left_corner.svg b/src/svg/static/bottom_left_corner.svg
new file mode 100644
index 0000000..1079273
--- /dev/null
+++ b/src/svg/static/bottom_left_corner.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/bottom_right_corner.svg b/src/svg/static/bottom_right_corner.svg
new file mode 100644
index 0000000..61cf654
--- /dev/null
+++ b/src/svg/static/bottom_right_corner.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/bottom_side.svg b/src/svg/static/bottom_side.svg
new file mode 120000
index 0000000..9c7bb92
--- /dev/null
+++ b/src/svg/static/bottom_side.svg
@@ -0,0 +1 @@
+top_side.svg
\ No newline at end of file
diff --git a/src/svg/static/bottom_tee.svg b/src/svg/static/bottom_tee.svg
new file mode 100644
index 0000000..306233b
--- /dev/null
+++ b/src/svg/static/bottom_tee.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/center_ptr.svg b/src/svg/static/center_ptr.svg
new file mode 100644
index 0000000..304f6ef
--- /dev/null
+++ b/src/svg/static/center_ptr.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/src/svg/static/circle.svg b/src/svg/static/circle.svg
new file mode 100644
index 0000000..903dc11
--- /dev/null
+++ b/src/svg/static/circle.svg
@@ -0,0 +1,21 @@
+
\ No newline at end of file
diff --git a/src/svg/static/context_menu.svg b/src/svg/static/context_menu.svg
new file mode 100644
index 0000000..e326ad2
--- /dev/null
+++ b/src/svg/static/context_menu.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/src/svg/static/copy.svg b/src/svg/static/copy.svg
new file mode 100644
index 0000000..5390c7d
--- /dev/null
+++ b/src/svg/static/copy.svg
@@ -0,0 +1,32 @@
+
\ No newline at end of file
diff --git a/src/svg/static/cross.svg b/src/svg/static/cross.svg
new file mode 100644
index 0000000..d894d8d
--- /dev/null
+++ b/src/svg/static/cross.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/svg/static/crossed_circle.svg b/src/svg/static/crossed_circle.svg
new file mode 100644
index 0000000..8535691
--- /dev/null
+++ b/src/svg/static/crossed_circle.svg
@@ -0,0 +1,22 @@
+
\ No newline at end of file
diff --git a/src/svg/static/crosshair.svg b/src/svg/static/crosshair.svg
new file mode 100644
index 0000000..09f696f
--- /dev/null
+++ b/src/svg/static/crosshair.svg
@@ -0,0 +1,15 @@
+
\ No newline at end of file
diff --git a/src/svg/static/dnd_ask.svg b/src/svg/static/dnd_ask.svg
new file mode 120000
index 0000000..14c57d2
--- /dev/null
+++ b/src/svg/static/dnd_ask.svg
@@ -0,0 +1 @@
+question_arrow.svg
\ No newline at end of file
diff --git a/src/svg/static/dnd_copy.svg b/src/svg/static/dnd_copy.svg
new file mode 120000
index 0000000..4b1d7e7
--- /dev/null
+++ b/src/svg/static/dnd_copy.svg
@@ -0,0 +1 @@
+copy.svg
\ No newline at end of file
diff --git a/src/svg/static/dnd_link.svg b/src/svg/static/dnd_link.svg
new file mode 120000
index 0000000..4abb12d
--- /dev/null
+++ b/src/svg/static/dnd_link.svg
@@ -0,0 +1 @@
+link.svg
\ No newline at end of file
diff --git a/src/svg/static/dnd_move.svg b/src/svg/static/dnd_move.svg
new file mode 120000
index 0000000..37362fe
--- /dev/null
+++ b/src/svg/static/dnd_move.svg
@@ -0,0 +1 @@
+move.svg
\ No newline at end of file
diff --git a/src/svg/static/dnd_no_drop.svg b/src/svg/static/dnd_no_drop.svg
new file mode 100644
index 0000000..e22810c
--- /dev/null
+++ b/src/svg/static/dnd_no_drop.svg
@@ -0,0 +1,20 @@
+
diff --git a/src/svg/static/dnd_none.svg b/src/svg/static/dnd_none.svg
new file mode 120000
index 0000000..37362fe
--- /dev/null
+++ b/src/svg/static/dnd_none.svg
@@ -0,0 +1 @@
+move.svg
\ No newline at end of file
diff --git a/src/svg/static/dotbox.svg b/src/svg/static/dotbox.svg
new file mode 100644
index 0000000..7bd24db
--- /dev/null
+++ b/src/svg/static/dotbox.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/fd_double_arrow.svg b/src/svg/static/fd_double_arrow.svg
new file mode 120000
index 0000000..acc15d0
--- /dev/null
+++ b/src/svg/static/fd_double_arrow.svg
@@ -0,0 +1 @@
+bottom_left_corner.svg
\ No newline at end of file
diff --git a/src/svg/static/grabbing.svg b/src/svg/static/grabbing.svg
new file mode 120000
index 0000000..37362fe
--- /dev/null
+++ b/src/svg/static/grabbing.svg
@@ -0,0 +1 @@
+move.svg
\ No newline at end of file
diff --git a/src/svg/static/hand1.svg b/src/svg/static/hand1.svg
new file mode 100644
index 0000000..20540a7
--- /dev/null
+++ b/src/svg/static/hand1.svg
@@ -0,0 +1,21 @@
+
diff --git a/src/svg/static/hand2.svg b/src/svg/static/hand2.svg
new file mode 100644
index 0000000..06f5882
--- /dev/null
+++ b/src/svg/static/hand2.svg
@@ -0,0 +1,21 @@
+
diff --git a/src/svg/static/left_ptr.svg b/src/svg/static/left_ptr.svg
new file mode 100644
index 0000000..bf8f500
--- /dev/null
+++ b/src/svg/static/left_ptr.svg
@@ -0,0 +1,21 @@
+
diff --git a/src/svg/static/left_side.svg b/src/svg/static/left_side.svg
new file mode 100644
index 0000000..0982847
--- /dev/null
+++ b/src/svg/static/left_side.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/left_tee.svg b/src/svg/static/left_tee.svg
new file mode 100644
index 0000000..f704d0e
--- /dev/null
+++ b/src/svg/static/left_tee.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/link.svg b/src/svg/static/link.svg
new file mode 100644
index 0000000..60efe5a
--- /dev/null
+++ b/src/svg/static/link.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/ll_angle.svg b/src/svg/static/ll_angle.svg
new file mode 100644
index 0000000..2d35f1b
--- /dev/null
+++ b/src/svg/static/ll_angle.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/lr_angle.svg b/src/svg/static/lr_angle.svg
new file mode 100644
index 0000000..dd90a0c
--- /dev/null
+++ b/src/svg/static/lr_angle.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/move.svg b/src/svg/static/move.svg
new file mode 100644
index 0000000..ef8628b
--- /dev/null
+++ b/src/svg/static/move.svg
@@ -0,0 +1,21 @@
+
diff --git a/src/svg/static/pencil.svg b/src/svg/static/pencil.svg
new file mode 100644
index 0000000..a235e3b
--- /dev/null
+++ b/src/svg/static/pencil.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/plus.svg b/src/svg/static/plus.svg
new file mode 100644
index 0000000..47940d4
--- /dev/null
+++ b/src/svg/static/plus.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/svg/static/pointer_move.svg b/src/svg/static/pointer_move.svg
new file mode 120000
index 0000000..37362fe
--- /dev/null
+++ b/src/svg/static/pointer_move.svg
@@ -0,0 +1 @@
+move.svg
\ No newline at end of file
diff --git a/src/svg/static/question_arrow.svg b/src/svg/static/question_arrow.svg
new file mode 100644
index 0000000..1cc74ef
--- /dev/null
+++ b/src/svg/static/question_arrow.svg
@@ -0,0 +1,13 @@
+
\ No newline at end of file
diff --git a/src/svg/static/right_ptr.svg b/src/svg/static/right_ptr.svg
new file mode 100644
index 0000000..8dcbe1e
--- /dev/null
+++ b/src/svg/static/right_ptr.svg
@@ -0,0 +1,13 @@
+
\ No newline at end of file
diff --git a/src/svg/static/right_side.svg b/src/svg/static/right_side.svg
new file mode 120000
index 0000000..36e195a
--- /dev/null
+++ b/src/svg/static/right_side.svg
@@ -0,0 +1 @@
+left_side.svg
\ No newline at end of file
diff --git a/src/svg/static/right_tee.svg b/src/svg/static/right_tee.svg
new file mode 100644
index 0000000..02be6ac
--- /dev/null
+++ b/src/svg/static/right_tee.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/sb_down_arrow.svg b/src/svg/static/sb_down_arrow.svg
new file mode 100644
index 0000000..52825d2
--- /dev/null
+++ b/src/svg/static/sb_down_arrow.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/svg/static/sb_h_double_arrow.svg b/src/svg/static/sb_h_double_arrow.svg
new file mode 100644
index 0000000..bc17a5b
--- /dev/null
+++ b/src/svg/static/sb_h_double_arrow.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/sb_left_arrow.svg b/src/svg/static/sb_left_arrow.svg
new file mode 100644
index 0000000..f960fc4
--- /dev/null
+++ b/src/svg/static/sb_left_arrow.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/svg/static/sb_right_arrow.svg b/src/svg/static/sb_right_arrow.svg
new file mode 100644
index 0000000..4cb4e58
--- /dev/null
+++ b/src/svg/static/sb_right_arrow.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/svg/static/sb_up_arrow.svg b/src/svg/static/sb_up_arrow.svg
new file mode 100644
index 0000000..05c2594
--- /dev/null
+++ b/src/svg/static/sb_up_arrow.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/svg/static/sb_v_double_arrow.svg b/src/svg/static/sb_v_double_arrow.svg
new file mode 100644
index 0000000..68e65e2
--- /dev/null
+++ b/src/svg/static/sb_v_double_arrow.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/tcross.svg b/src/svg/static/tcross.svg
new file mode 120000
index 0000000..e0b26b0
--- /dev/null
+++ b/src/svg/static/tcross.svg
@@ -0,0 +1 @@
+cross.svg
\ No newline at end of file
diff --git a/src/svg/static/top_left_corner.svg b/src/svg/static/top_left_corner.svg
new file mode 120000
index 0000000..a3a3e2d
--- /dev/null
+++ b/src/svg/static/top_left_corner.svg
@@ -0,0 +1 @@
+bottom_right_corner.svg
\ No newline at end of file
diff --git a/src/svg/static/top_right_corner.svg b/src/svg/static/top_right_corner.svg
new file mode 120000
index 0000000..acc15d0
--- /dev/null
+++ b/src/svg/static/top_right_corner.svg
@@ -0,0 +1 @@
+bottom_left_corner.svg
\ No newline at end of file
diff --git a/src/svg/static/top_side.svg b/src/svg/static/top_side.svg
new file mode 100644
index 0000000..b8666bc
--- /dev/null
+++ b/src/svg/static/top_side.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/top_tee.svg b/src/svg/static/top_tee.svg
new file mode 100644
index 0000000..7c4d899
--- /dev/null
+++ b/src/svg/static/top_tee.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/ul_angle.svg b/src/svg/static/ul_angle.svg
new file mode 100644
index 0000000..9d531e2
--- /dev/null
+++ b/src/svg/static/ul_angle.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/ur_angle.svg b/src/svg/static/ur_angle.svg
new file mode 100644
index 0000000..622007d
--- /dev/null
+++ b/src/svg/static/ur_angle.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/vertical_text.svg b/src/svg/static/vertical_text.svg
new file mode 100644
index 0000000..f6cbc71
--- /dev/null
+++ b/src/svg/static/vertical_text.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/svg/static/wayland_cursor.svg b/src/svg/static/wayland_cursor.svg
new file mode 100644
index 0000000..8be0097
--- /dev/null
+++ b/src/svg/static/wayland_cursor.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/src/svg/static/x_cursor.svg b/src/svg/static/x_cursor.svg
new file mode 100644
index 0000000..c92c5ab
--- /dev/null
+++ b/src/svg/static/x_cursor.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/src/svg/static/xterm.svg b/src/svg/static/xterm.svg
new file mode 100644
index 0000000..70c397a
--- /dev/null
+++ b/src/svg/static/xterm.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/svg/static/zoom_in.svg b/src/svg/static/zoom_in.svg
new file mode 100644
index 0000000..82e9d83
--- /dev/null
+++ b/src/svg/static/zoom_in.svg
@@ -0,0 +1,15 @@
+
\ No newline at end of file
diff --git a/src/svg/static/zoom_out.svg b/src/svg/static/zoom_out.svg
new file mode 100644
index 0000000..6f62b66
--- /dev/null
+++ b/src/svg/static/zoom_out.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
From 78f5e0e45e3ab7625de3eb93b67bb29856d21b58 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 19:09:44 +0530
Subject: [PATCH 12/33] =?UTF-8?q?=F0=9F=92=85=F0=9F=8F=BB=20New=20static?=
=?UTF-8?q?=20cursors?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/svg/static/bottom_left_corner.svg | 32 +++++++++----
src/svg/static/bottom_right_corner.svg | 32 +++++++++----
src/svg/static/bottom_tee.svg | 31 ++++++++----
src/svg/static/circle.svg | 43 +++++++++--------
src/svg/static/context_menu.svg | 39 +++++++++-------
src/svg/static/copy.svg | 65 ++++++++++++++------------
src/svg/static/dnd_no_drop.svg | 26 ++++++-----
src/svg/static/hand1.svg | 6 +--
src/svg/static/hand2.svg | 6 +--
src/svg/static/left_tee.svg | 31 ++++++++----
src/svg/static/link.svg | 32 +++++++++----
src/svg/static/ll_angle.svg | 30 ++++++++----
src/svg/static/lr_angle.svg | 30 ++++++++----
src/svg/static/pencil.svg | 30 ++++++++----
src/svg/static/right_tee.svg | 36 ++++++++++----
src/svg/static/sb_down_arrow.svg | 33 +++++++++----
src/svg/static/sb_h_double_arrow.svg | 32 +++++++++----
src/svg/static/sb_left_arrow.svg | 33 +++++++++----
src/svg/static/sb_right_arrow.svg | 33 +++++++++----
src/svg/static/sb_up_arrow.svg | 33 +++++++++----
src/svg/static/sb_v_double_arrow.svg | 32 +++++++++----
src/svg/static/top_tee.svg | 31 ++++++++----
src/svg/static/ul_angle.svg | 30 ++++++++----
src/svg/static/ur_angle.svg | 30 ++++++++----
src/svg/static/vertical_text.svg | 4 +-
src/svg/static/wayland_cursor.svg | 16 +++----
src/svg/static/x_cursor.svg | 12 ++---
src/svg/static/xterm.svg | 4 +-
src/svg/static/zoom_in.svg | 35 ++++++++------
src/svg/static/zoom_out.svg | 34 ++++++++------
30 files changed, 556 insertions(+), 305 deletions(-)
diff --git a/src/svg/static/bottom_left_corner.svg b/src/svg/static/bottom_left_corner.svg
index 1079273..ecc4ea4 100644
--- a/src/svg/static/bottom_left_corner.svg
+++ b/src/svg/static/bottom_left_corner.svg
@@ -1,11 +1,23 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/bottom_right_corner.svg b/src/svg/static/bottom_right_corner.svg
index 61cf654..cecac38 100644
--- a/src/svg/static/bottom_right_corner.svg
+++ b/src/svg/static/bottom_right_corner.svg
@@ -1,11 +1,23 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/bottom_tee.svg b/src/svg/static/bottom_tee.svg
index 306233b..f6dc412 100644
--- a/src/svg/static/bottom_tee.svg
+++ b/src/svg/static/bottom_tee.svg
@@ -1,11 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/circle.svg b/src/svg/static/circle.svg
index 903dc11..9392cf4 100644
--- a/src/svg/static/circle.svg
+++ b/src/svg/static/circle.svg
@@ -1,21 +1,24 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/context_menu.svg b/src/svg/static/context_menu.svg
index e326ad2..43e14f9 100644
--- a/src/svg/static/context_menu.svg
+++ b/src/svg/static/context_menu.svg
@@ -1,17 +1,24 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/copy.svg b/src/svg/static/copy.svg
index 5390c7d..1387ec4 100644
--- a/src/svg/static/copy.svg
+++ b/src/svg/static/copy.svg
@@ -1,32 +1,35 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/dnd_no_drop.svg b/src/svg/static/dnd_no_drop.svg
index e22810c..f636fbe 100644
--- a/src/svg/static/dnd_no_drop.svg
+++ b/src/svg/static/dnd_no_drop.svg
@@ -1,20 +1,22 @@
diff --git a/src/svg/static/hand1.svg b/src/svg/static/hand1.svg
index 20540a7..1b65ca7 100644
--- a/src/svg/static/hand1.svg
+++ b/src/svg/static/hand1.svg
@@ -3,11 +3,11 @@
-
+
-
+
-
+
diff --git a/src/svg/static/hand2.svg b/src/svg/static/hand2.svg
index 06f5882..172f354 100644
--- a/src/svg/static/hand2.svg
+++ b/src/svg/static/hand2.svg
@@ -3,11 +3,11 @@
-
+
-
+
-
+
diff --git a/src/svg/static/left_tee.svg b/src/svg/static/left_tee.svg
index f704d0e..c14a78d 100644
--- a/src/svg/static/left_tee.svg
+++ b/src/svg/static/left_tee.svg
@@ -1,11 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/link.svg b/src/svg/static/link.svg
index 60efe5a..cb2e097 100644
--- a/src/svg/static/link.svg
+++ b/src/svg/static/link.svg
@@ -1,11 +1,23 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/ll_angle.svg b/src/svg/static/ll_angle.svg
index 2d35f1b..78fc6a3 100644
--- a/src/svg/static/ll_angle.svg
+++ b/src/svg/static/ll_angle.svg
@@ -1,11 +1,21 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/lr_angle.svg b/src/svg/static/lr_angle.svg
index dd90a0c..7184991 100644
--- a/src/svg/static/lr_angle.svg
+++ b/src/svg/static/lr_angle.svg
@@ -1,11 +1,21 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/pencil.svg b/src/svg/static/pencil.svg
index a235e3b..baa6c99 100644
--- a/src/svg/static/pencil.svg
+++ b/src/svg/static/pencil.svg
@@ -1,11 +1,21 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/right_tee.svg b/src/svg/static/right_tee.svg
index 02be6ac..8ba22f7 100644
--- a/src/svg/static/right_tee.svg
+++ b/src/svg/static/right_tee.svg
@@ -1,11 +1,27 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/sb_down_arrow.svg b/src/svg/static/sb_down_arrow.svg
index 52825d2..8f96717 100644
--- a/src/svg/static/sb_down_arrow.svg
+++ b/src/svg/static/sb_down_arrow.svg
@@ -1,9 +1,26 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/sb_h_double_arrow.svg b/src/svg/static/sb_h_double_arrow.svg
index bc17a5b..1a2f351 100644
--- a/src/svg/static/sb_h_double_arrow.svg
+++ b/src/svg/static/sb_h_double_arrow.svg
@@ -1,11 +1,23 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/sb_left_arrow.svg b/src/svg/static/sb_left_arrow.svg
index f960fc4..6491106 100644
--- a/src/svg/static/sb_left_arrow.svg
+++ b/src/svg/static/sb_left_arrow.svg
@@ -1,9 +1,26 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/sb_right_arrow.svg b/src/svg/static/sb_right_arrow.svg
index 4cb4e58..47f3f56 100644
--- a/src/svg/static/sb_right_arrow.svg
+++ b/src/svg/static/sb_right_arrow.svg
@@ -1,9 +1,26 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/sb_up_arrow.svg b/src/svg/static/sb_up_arrow.svg
index 05c2594..627e252 100644
--- a/src/svg/static/sb_up_arrow.svg
+++ b/src/svg/static/sb_up_arrow.svg
@@ -1,9 +1,26 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/sb_v_double_arrow.svg b/src/svg/static/sb_v_double_arrow.svg
index 68e65e2..0b3757f 100644
--- a/src/svg/static/sb_v_double_arrow.svg
+++ b/src/svg/static/sb_v_double_arrow.svg
@@ -1,11 +1,23 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/top_tee.svg b/src/svg/static/top_tee.svg
index 7c4d899..ffd9248 100644
--- a/src/svg/static/top_tee.svg
+++ b/src/svg/static/top_tee.svg
@@ -1,11 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/ul_angle.svg b/src/svg/static/ul_angle.svg
index 9d531e2..60b1912 100644
--- a/src/svg/static/ul_angle.svg
+++ b/src/svg/static/ul_angle.svg
@@ -1,11 +1,21 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/ur_angle.svg b/src/svg/static/ur_angle.svg
index 622007d..fdb9b82 100644
--- a/src/svg/static/ur_angle.svg
+++ b/src/svg/static/ur_angle.svg
@@ -1,11 +1,21 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/vertical_text.svg b/src/svg/static/vertical_text.svg
index f6cbc71..afc487f 100644
--- a/src/svg/static/vertical_text.svg
+++ b/src/svg/static/vertical_text.svg
@@ -2,6 +2,6 @@
-
-
+
+
diff --git a/src/svg/static/wayland_cursor.svg b/src/svg/static/wayland_cursor.svg
index 8be0097..3114d5d 100644
--- a/src/svg/static/wayland_cursor.svg
+++ b/src/svg/static/wayland_cursor.svg
@@ -1,11 +1,7 @@
\ No newline at end of file
+
+
+
+
+
+
diff --git a/src/svg/static/x_cursor.svg b/src/svg/static/x_cursor.svg
index c92c5ab..45fa0a6 100644
--- a/src/svg/static/x_cursor.svg
+++ b/src/svg/static/x_cursor.svg
@@ -1,8 +1,6 @@
\ No newline at end of file
+
+
+
+
+
diff --git a/src/svg/static/xterm.svg b/src/svg/static/xterm.svg
index 70c397a..73d7b47 100644
--- a/src/svg/static/xterm.svg
+++ b/src/svg/static/xterm.svg
@@ -2,6 +2,6 @@
-
-
+
+
diff --git a/src/svg/static/zoom_in.svg b/src/svg/static/zoom_in.svg
index 82e9d83..6a37c6d 100644
--- a/src/svg/static/zoom_in.svg
+++ b/src/svg/static/zoom_in.svg
@@ -1,15 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/zoom_out.svg b/src/svg/static/zoom_out.svg
index 6f62b66..da679da 100644
--- a/src/svg/static/zoom_out.svg
+++ b/src/svg/static/zoom_out.svg
@@ -1,14 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From 7202164e835ec1f0cbd2245da6e1a8449533e0c7 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 19:28:59 +0530
Subject: [PATCH 13/33] =?UTF-8?q?=E2=9C=A8=20Redesign=20missing=20cursors?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/svg/static/bottom_right_corner.svg | 4 +--
src/svg/static/dotbox.svg | 34 ++++++++++++++++++--------
src/svg/static/move.svg | 2 +-
src/svg/static/plus.svg | 29 ++++++++++++++++------
src/svg/static/question_arrow.svg | 33 ++++++++++++++++---------
5 files changed, 69 insertions(+), 33 deletions(-)
diff --git a/src/svg/static/bottom_right_corner.svg b/src/svg/static/bottom_right_corner.svg
index cecac38..47603fa 100644
--- a/src/svg/static/bottom_right_corner.svg
+++ b/src/svg/static/bottom_right_corner.svg
@@ -6,8 +6,8 @@
-
-
+
+
diff --git a/src/svg/static/dotbox.svg b/src/svg/static/dotbox.svg
index 7bd24db..32e58c9 100644
--- a/src/svg/static/dotbox.svg
+++ b/src/svg/static/dotbox.svg
@@ -1,11 +1,25 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/move.svg b/src/svg/static/move.svg
index ef8628b..2cff4c2 100644
--- a/src/svg/static/move.svg
+++ b/src/svg/static/move.svg
@@ -7,7 +7,7 @@
-
+
diff --git a/src/svg/static/plus.svg b/src/svg/static/plus.svg
index 47940d4..10d4426 100644
--- a/src/svg/static/plus.svg
+++ b/src/svg/static/plus.svg
@@ -1,9 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/svg/static/question_arrow.svg b/src/svg/static/question_arrow.svg
index 1cc74ef..272e764 100644
--- a/src/svg/static/question_arrow.svg
+++ b/src/svg/static/question_arrow.svg
@@ -1,13 +1,22 @@
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From ed3cb03194b69fb451225adae99177596507405d Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Sun, 25 Oct 2020 19:34:52 +0530
Subject: [PATCH 14/33] =?UTF-8?q?=F0=9F=9A=80=20Updated=20hotspots=20in=20?=
=?UTF-8?q?builder?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
build.py | 7 +---
helper.py | 24 ++++++++----
hotspots.json | 102 --------------------------------------------------
log.py | 8 +++-
4 files changed, 25 insertions(+), 116 deletions(-)
delete mode 100644 hotspots.json
diff --git a/build.py b/build.py
index 7679079..2382e1a 100644
--- a/build.py
+++ b/build.py
@@ -1,4 +1,3 @@
-import json
import log
from clickgen import build_cursor_theme
@@ -8,10 +7,8 @@
def build() -> None:
init_build()
- with open('./hotspots.json', 'r') as hotspot_file:
- hotspots = json.loads(hotspot_file.read())
- build_cursor_theme(name, image_dir=bitmaps_dir,
- cursor_sizes=sizes, out_path=temp_folder, hotspots=hotspots, archive=False, delay=delay)
+ build_cursor_theme(name, image_dir=bitmaps_dir,
+ cursor_sizes=sizes, out_path=temp_folder, hotspots=None, archive=False, delay=delay)
pack_it()
diff --git a/helper.py b/helper.py
index 5259179..cc88968 100644
--- a/helper.py
+++ b/helper.py
@@ -2,7 +2,16 @@
import json
import sys
-from config import name, temp_folder, bitmaps_dir, win_out, x11_out, window_install_inf_content, windows_cursors, package_dir
+from config import (
+ name,
+ temp_folder,
+ bitmaps_dir,
+ win_out,
+ x11_out,
+ window_install_inf_content,
+ windows_cursors,
+ package_dir,
+)
from os import path, listdir, rename, remove
@@ -30,13 +39,13 @@ def window_bundle() -> None:
def init_build() -> None:
"""
- Print build version.
- Remove previously built packages && Check Bitmaps.
+ Print build version.
+ Remove previously built packages && Check Bitmaps.
"""
with open("./package.json", "r") as package_file:
data = json.loads(package_file.read())
- version = data['version']
- print("β‘ GoogleDot Builder %s" % version)
+ version = data["version"]
+ print("β‘ GoogleDot Builder v%s" % version)
# cleanup old packages
if path.exists(package_dir):
@@ -45,13 +54,14 @@ def init_build() -> None:
# Checking Bitmaps directory
if not path.exists(bitmaps_dir):
print(
- "β BITMAPS NOT FOUND.\n\n`yarn install && yarn render` to Generates Bitmaps")
+ "β BITMAPS NOT FOUND.\n\n`yarn install && yarn render` to Generates Bitmaps"
+ )
sys.exit(1)
def pack_it() -> None:
"""
- Create Crisp π¦ Packages for Windows & X11 Cursor Theme.
+ Create Crisp π¦ Packages for Windows & X11 Cursor Theme.
"""
# Rename directory
shutil.move(path.join(temp_folder, name, "x11"), x11_out_dir)
diff --git a/hotspots.json b/hotspots.json
deleted file mode 100644
index adbba3b..0000000
--- a/hotspots.json
+++ /dev/null
@@ -1,102 +0,0 @@
-{
- "all_scroll": { "xhot": 100, "yhot": 100 },
-
- "bottom_left_corner": { "xhot": 100, "yhot": 100 },
- "fd_double_arrow": { "xhot": 100, "yhot": 100 },
- "top_right_corner": { "xhot": 100, "yhot": 100 },
-
- "bottom_right_corner": { "xhot": 100, "yhot": 100 },
- "bd_double_arrow": { "xhot": 100, "yhot": 100 },
- "top_left_corner": { "xhot": 100, "yhot": 100 },
-
- "bottom_tee": { "xhot": 141, "yhot": 99 },
-
- "center_ptr": { "xhot": 61, "yhot": 100 },
-
- "circle": { "xhot": 47, "yhot": 39 },
- "crossed_circle": { "xhot": 47, "yhot": 39 },
- "dnd_no_drop": { "xhot": 47, "yhot": 39 },
-
- "context_menu": { "xhot": 61, "yhot": 58 },
-
- "copy": { "xhot": 47, "yhot": 39 },
- "dnd_copy": { "xhot": 47, "yhot": 39 },
-
- "cross": { "xhot": 100, "yhot": 100 },
- "tcross": { "xhot": 100, "yhot": 100 },
-
- "crosshair": { "xhot": 100, "yhot": 100 },
-
- "dotbox": { "xhot": 100, "yhot": 100 },
-
- "hand1": { "xhot": 94, "yhot": 105 },
-
- "hand2": { "xhot": 66, "yhot": 34 },
-
- "left_ptr": { "xhot": 68, "yhot": 41 },
-
- "left_side": { "xhot": 100, "yhot": 100 },
- "right_side": { "xhot": 100, "yhot": 100 },
-
- "left_tee": { "xhot": 100, "yhot": 58 },
-
- "link": { "xhot": 61, "yhot": 105 },
- "dnd_link": { "xhot": 61, "yhot": 105 },
-
- "ll_angle": { "xhot": 141, "yhot": 58 },
-
- "lr_angle": { "xhot": 141, "yhot": 138 },
-
- "move": { "xhot": 80, "yhot": 106 },
- "dnd_move": { "xhot": 80, "yhot": 106 },
- "dnd_none": { "xhot": 80, "yhot": 106 },
- "grabbing": { "xhot": 80, "yhot": 106 },
- "pointer_move": { "xhot": 80, "yhot": 106 },
-
- "pencil": { "xhot": 141, "yhot": 58 },
-
- "plus": { "xhot": 100, "yhot": 100 },
-
- "question_arrow": { "xhot": 105, "yhot": 105 },
- "dnd_ask": { "xhot": 105, "yhot": 105 },
-
- "right_ptr": { "xhot": 61, "yhot": 138 },
-
- "right_tee": { "xhot": 100, "yhot": 138 },
-
- "sb_down_arrow": { "xhot": 133, "yhot": 99 },
-
- "sb_h_double_arrow": { "xhot": 100, "yhot": 100 },
-
- "sb_left_arrow": { "xhot": 100, "yhot": 68 },
-
- "sb_right_arrow": { "xhot": 100, "yhot": 138 },
-
- "sb_up_arrow": { "xhot": 68, "yhot": 99 },
-
- "sb_v_double_arrow": { "xhot": 100, "yhot": 100 },
-
- "top_side": { "xhot": 100, "yhot": 100 },
- "bottom_side": { "xhot": 100, "yhot": 100 },
-
- "top_tee": { "xhot": 61, "yhot": 99 },
-
- "ul_angle": { "xhot": 61, "yhot": 65 },
-
- "ur_angle": { "xhot": 61, "yhot": 138 },
-
- "vertical_text": { "xhot": 100, "yhot": 102 },
-
- "wait": { "xhot": 104, "yhot": 105 },
- "left_ptr_watch": { "xhot": 104, "yhot": 105 },
-
- "wayland_cursor": { "xhot": 100, "yhot": 100 },
-
- "x_cursor": { "xhot": 100, "yhot": 100 },
-
- "xterm": { "xhot": 97, "yhot": 97 },
-
- "zoom_in": { "xhot": 76, "yhot": 78 },
-
- "zoom_out": { "xhot": 76, "yhot": 78 }
-}
diff --git a/log.py b/log.py
index e59183c..0e8767e 100644
--- a/log.py
+++ b/log.py
@@ -2,5 +2,9 @@
import logging
-logging.basicConfig(filename='build.log', filemode='w',
- format='%(name)s - %(levelname)s - %(message)s', level=logging.DEBUG)
+logging.basicConfig(
+ filename="build.log",
+ filemode="w",
+ format="%(name)s - %(levelname)s - %(message)s",
+ level=logging.DEBUG,
+)
From aa3103f4714f9d76a703a3954fe1146992f70d38 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 12:06:37 +0530
Subject: [PATCH 15/33] =?UTF-8?q?=F0=9F=9A=80=20Animated=20cursors?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/svg/animated/wait.svg | 92 +++++++++++++++------------------------
1 file changed, 36 insertions(+), 56 deletions(-)
diff --git a/src/svg/animated/wait.svg b/src/svg/animated/wait.svg
index 4c2f3ba..fb03daa 100644
--- a/src/svg/animated/wait.svg
+++ b/src/svg/animated/wait.svg
@@ -4,73 +4,53 @@
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
From 8e7db6c10bbe48ca19b03d2a6596f30bf3bdf05a Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:14:45 +0530
Subject: [PATCH 16/33] =?UTF-8?q?=F0=9F=98=8D=20Info=20Header=20added?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 63 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index e515309..8d47b41 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,64 @@
-# Google_Cursor
+
+ GoogleDot Cursor
+
+
+ π Cursor theme inspired on Google
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+---
From c77cc1ae2de823ce2bceb6ee14eacdaef50e937e Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:17:34 +0530
Subject: [PATCH 17/33] =?UTF-8?q?=E2=84=B9=EF=B8=8F=20Cursor=20info?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/README.md b/README.md
index 8d47b41..281a97b 100644
--- a/README.md
+++ b/README.md
@@ -54,6 +54,7 @@
+
@@ -62,3 +63,9 @@
---
+
+
+
+# GoogleDot Cursor
+
+Cursor theme inspired on **google material design** for `Windows` and `Linux` with _HiDPi Support_ π.
From 8c03d018fbe5606b65ef129d6a510819187c2a81 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:29:00 +0530
Subject: [PATCH 18/33] =?UTF-8?q?=E2=9A=A1=20Colors=20and=20sizes?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/README.md b/README.md
index 281a97b..8fb894c 100644
--- a/README.md
+++ b/README.md
@@ -69,3 +69,24 @@
# GoogleDot Cursor
Cursor theme inspired on **google material design** for `Windows` and `Linux` with _HiDPi Support_ π.
+
+#### Cursor Sizes
+
+22
+24
+28
+32
+40
+48
+56
+64
+72
+80
+88
+96
+
+#### Colors
+
+![#4285F4](https://imgur.com/NXEup6E.png)
+![#FFFFFF](https://imgur.com/cvFxSBb.png)
+
From 3b89a28b5a20b66bb827a3d5497e462f689ad945 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:29:20 +0530
Subject: [PATCH 19/33] =?UTF-8?q?=F0=9F=92=BE=20Pling=20store=20install?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/README.md b/README.md
index 8fb894c..60a31c9 100644
--- a/README.md
+++ b/README.md
@@ -90,3 +90,12 @@ Cursor theme inspired on **google material design** for `Windows` and `Linux` wi
![#4285F4](https://imgur.com/NXEup6E.png)
![#FFFFFF](https://imgur.com/cvFxSBb.png)
+#### Quick install
+
+
+
+
+
+
+
+
From 238296198c3f769bc591b7af5365560aa1b818d7 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:31:06 +0530
Subject: [PATCH 20/33] =?UTF-8?q?=F0=9F=92=BE=20Install=20docs?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/README.md b/README.md
index 60a31c9..822f9c1 100644
--- a/README.md
+++ b/README.md
@@ -98,4 +98,27 @@ Cursor theme inspired on **google material design** for `Windows` and `Linux` wi
+### Manual Install
+
+#### Linux/X11
+
+```bash
+# extract `GoogleDot.tar.gz`
+tar -xvf GoogleDot.tar.gz
+
+# For local users
+mv GoogleDot ~/.icons/
+
+# For all users
+sudo mv GoogleDot /usr/share/icons/
+```
+
+
+#### Windows
+
+1. unzip `GoogleDot_Windows.zip` file
+2. Open `GoogleDot_Windows/` in Explorer, and **right click** on `install.inf`.
+3. Click 'Install' from the context menu, and authorize the modifications to your system.
+4. Open _Control Panel > Personalization and Appearance > Change mouse pointers_, and select **GoogleDot Cursors**.
+5. Click '**Apply**'.
From 72a8ae4f58e3af61bdbc3b2fe6d0b8d6cae30e7b Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:33:12 +0530
Subject: [PATCH 21/33] =?UTF-8?q?=F0=9F=94=97=20Build=20Dependencies=20doc?=
=?UTF-8?q?s?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)
diff --git a/README.md b/README.md
index 822f9c1..bc87cd4 100644
--- a/README.md
+++ b/README.md
@@ -122,3 +122,57 @@ sudo mv GoogleDot /usr/share/icons/
4. Open _Control Panel > Personalization and Appearance > Change mouse pointers_, and select **GoogleDot Cursors**.
5. Click '**Apply**'.
+
+
+# Dependencies
+
+## Runtime Dependencies
+
+- libxcursor-dev
+- libx11-dev
+- libpng-dev (<=1.6)
+
+#### Install Runtime Dependencies
+
+##### macOS
+
+```bash
+brew cask install xquartz libpng
+```
+
+##### Debain/ubuntu
+
+```bash
+sudo apt install libx11-dev libxcursor-dev libpng-dev
+```
+
+##### ArchLinux/Manjaro
+
+```bash
+sudo pacman -S libx11 libxcursor libpng
+```
+
+##### Fedora/Fedora Silverblue/CentOS/RHEL
+
+```bash
+sudo dnf install libx11-devel libxcursor-devel libpng-devel
+```
+
+## Build Dependencies
+
+- [nodejs](https://nodejs.org/en/) (<=12.x.x)
+- [yarn](https://classic.yarnpkg.com/en/docs/install/)
+- [python](https://www.python.org/downloads/) (<=3.6)
+- [pip3](https://pip.pypa.io/en/stable/installing/)
+
+### Node Packages
+
+- [puppeteer](https://www.npmjs.com/package/puppeteer)
+- [pngjs](https://www.npmjs.com/package/pngjs)
+- [pixelmatch](https://www.npmjs.com/package/pixelmatch)
+
+### PyPi Packages
+
+- [clickgen](https://pypi.org/project/clickgen/s)
+- [Pillow](https://pypi.org/project/Pillow/)
+
From f2f352bb153c563a0aeed79c61fb13f7043debf9 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:37:28 +0530
Subject: [PATCH 22/33] =?UTF-8?q?=F0=9F=9B=A0=20Build=20cursor=20docs?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/README.md b/README.md
index bc87cd4..8f6f68b 100644
--- a/README.md
+++ b/README.md
@@ -176,3 +176,34 @@ sudo dnf install libx11-devel libxcursor-devel libpng-devel
- [clickgen](https://pypi.org/project/clickgen/s)
- [Pillow](https://pypi.org/project/Pillow/)
+## Build From Scratch
+
+### β‘ Auto Build (using GitHub Actions)
+
+GitHub Actions is automatically runs on every `push`(on **main** and **dev** branches) and `pull request`(on **main** branch), You found theme resources in `artifact` section of **build**.GitHub **Actions** available inside [.github/workflows](https://github.com/ful1e5/Google_Cursor/tree/main/.github/workflows) directory.
+
+### Manual Build
+
+#### Setup python environment
+
+```bash
+python3 -m pip install --upgrade pip # Update pip to latest
+python3 -m pip3 install virtualenv # Install python virtual environment
+virtualenv venv # Create new virtualenv named `venv`
+source venv/bin/activate # Activate virtualenv
+
+# For Deactivate virtualenv
+deactivate
+```
+
+#### Compile From Source
+
+> Make sure your [python environment](#setup-python-environment) setup and `virtualenv` is **active**.
+
+```bash
+yarn install # Install all Node Packages
+yarn py_install # Install all PyPi Packages
+yarn compile # Compile the cursor theme
+```
+
+After build `bitmaps` and `themes` directory are generated at project **root**.
From 1bb61caa7f1f8446ebdbaf669d73b3b67fedecbd Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:39:11 +0530
Subject: [PATCH 23/33] =?UTF-8?q?=F0=9F=93=A6=20Build=20packages=20install?=
=?UTF-8?q?=20docs?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/README.md b/README.md
index 8f6f68b..f26cd3c 100644
--- a/README.md
+++ b/README.md
@@ -207,3 +207,24 @@ yarn compile # Compile the cursor theme
```
After build `bitmaps` and `themes` directory are generated at project **root**.
+
+### Install Build Theme
+
+All builded cursor themes are available inside `themes` directory.
+
+#### Linux
+
+```bash
+cd ./themes
+rm -rf ~/.icons/GoogleDot && cp GoogleDot ~/.icons/ # installing Theme to local user(recommend)
+```
+
+#### Windows
+
+1. unzip `GoogleDot_Windows.zip` file
+2. Open the `settings` app.
+3. **Goto** `Devices` -> `Mouse` -> `Additional Mouse Options`.
+4. **Goto** the `pointers` tab.
+5. Replace each cursor in the currently applied cursor set with the corresponding cursor in the `GoogleDot_Windows` folder.
+6. Click "**save as**" and type in the desired name.
+7. Click "**apply**" and "**ok**".
From 0a89ced849ea152662697cb1f580231afb2be741 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Mon, 26 Oct 2020 19:42:05 +0530
Subject: [PATCH 24/33] =?UTF-8?q?=F0=9F=8C=88=20Finish=20docs?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 41 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 40 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index f26cd3c..394963c 100644
--- a/README.md
+++ b/README.md
@@ -34,7 +34,7 @@
-
@@ -228,3 +228,42 @@ rm -rf ~/.icons/GoogleDot && cp GoogleDot ~/.icons/ # installing Theme to loca
5. Replace each cursor in the currently applied cursor set with the corresponding cursor in the `GoogleDot_Windows` folder.
6. Click "**save as**" and type in the desired name.
7. Click "**apply**" and "**ok**".
+
+
+
+# Bugs
+
+Bugs π should be reported [here](https://github.com/ful1e5/Google_Cursor/issues) on the Github issues page.
+
+
+
+# Getting Help
+
+You can create a **issue**, I will help you. π
+
+
+
+# Contributing
+
+Check [CONTRIBUTING.md](CONTRIBUTING.md), any suggestions for features and contributions to the continuing code masterelopment can be made via the issue tracker or code contributions via a `Fork` & `Pull requests`.
+
+
+
+## Support
+
+Give a **β
** or Follow on [GitHub](https://github.com/ful1e5),That's work as **Steroid π** for me. π
+
+> For extra support
+
+
+
+
+
+
+
+
+ ( `ΟΒ΄ )ΫΆβ¬ΞΉβββββββοΊ€
+
+
+ I'm Using Katana
+
\ No newline at end of file
From 43bb024001c477d153d211074e5a7de835846c3e Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 08:12:18 +0530
Subject: [PATCH 25/33] =?UTF-8?q?=F0=9F=8C=88=20Init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/FUNDING.yml | 2 ++
1 file changed, 2 insertions(+)
create mode 100644 .github/FUNDING.yml
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 0000000..9e754bd
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,2 @@
+patreon: KaizKhatri
+custom: https://www.paypal.me/kaizkhatri
From 69b8f4e16f20a766cc43351b1c8ddf8b6301ddd6 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 08:12:48 +0530
Subject: [PATCH 26/33] =?UTF-8?q?=F0=9F=A4=96=20Stale=20bot=20config?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/stale.yml | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
create mode 100644 .github/stale.yml
diff --git a/.github/stale.yml b/.github/stale.yml
new file mode 100644
index 0000000..d9f6563
--- /dev/null
+++ b/.github/stale.yml
@@ -0,0 +1,17 @@
+# Number of days of inactivity before an issue becomes stale
+daysUntilStale: 60
+# Number of days of inactivity before a stale issue is closed
+daysUntilClose: 7
+# Issues with these labels will never be considered stale
+exemptLabels:
+ - pinned
+ - security
+# Label to use when marking an issue as stale
+staleLabel: wontfix
+# Comment to post when marking an issue as stale. Set to `false` to disable
+markComment: >
+ This issue has been automatically marked as stale because it has not had
+ recent activity. It will be closed if no further activity occurs. Thank you
+ for your contributions.
+# Comment to post when closing a stale issue. Set to `false` to disable
+closeComment: false
\ No newline at end of file
From 355eb2942f5a8b97237a4c2b9aaf18e3481797fa Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 08:13:16 +0530
Subject: [PATCH 27/33] =?UTF-8?q?=F0=9F=94=A7=20buid=20workflow=20init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/workflows/build.yml | 95 +++++++++++++++++++++++++++++++++++++
1 file changed, 95 insertions(+)
create mode 100644 .github/workflows/build.yml
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..53e5725
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,95 @@
+name: build
+
+on:
+ push:
+ paths-ignore:
+ - "**.md"
+ - "**.bbcode"
+ - LICENSE
+ branches: [main, dev]
+
+ pull_request:
+ paths-ignore:
+ - "**.md"
+ - "**.bbcode"
+ - LICENSE
+ branches: [main]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Install build dependencies (apt)
+ run: |
+ sudo apt install libx11-dev libxcursor-dev libpng-dev
+ continue-on-error: false
+
+ - name: Get yarn cache directory path
+ id: yarn-cache-dir-path
+ run: echo "::set-output name=dir::$(yarn cache dir)"
+
+ - uses: actions/cache@v2
+ id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
+ with:
+ path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
+ key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
+ restore-keys: |
+ ${{ runner.os }}-yarn-
+
+ - uses: actions/setup-node@v1
+ with:
+ node-version: "12.x"
+ - run: yarn install
+ - run: yarn render
+
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: "3.x"
+
+ - name: Cache pip dependencies
+ uses: actions/cache@v2
+ with:
+ # This path is specific to Ubuntu
+ path: ~/.cache/pip
+ # Look to see if there is a cache hit for the corresponding requirements file
+ key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
+ restore-keys: |
+ ${{ runner.os }}-pip-
+ ${{ runner.os }}-
+
+ - name: Install pip dependencies
+ run: |
+ python -m pip install --upgrade pip
+ if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
+ continue-on-error: false
+
+ - name: Generating `GoogleDot` Cursor Theme
+ run: python build.py
+
+ - name: Compressing Artifacts
+ run: |
+ tar -cvzf logs.tar.gz build.log
+ tar -cvzf bitmaps.tar.gz bitmaps
+ tar -cvzf GoogleDot.tar.gz themes
+
+ - name: Uploading `GoogleDot` Build Log artifact
+ uses: actions/upload-artifact@v2
+ with:
+ name: logs
+ path: logs.tar.gz
+
+ - name: Uploading `bitmaps` artifact
+ uses: actions/upload-artifact@v2
+ with:
+ name: bitmaps
+ path: bitmaps.tar.gz
+
+ - name: Uploading `GoogleDot` Theme artifact
+ uses: actions/upload-artifact@v2
+ with:
+ name: GoogleDot
+ path: GoogleDot.tar.gz
From be62e54e08e3ca0ffccdf3732548e72f258e57fe Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 08:13:37 +0530
Subject: [PATCH 28/33] =?UTF-8?q?=F0=9F=92=96=20Black=20issues=20not=20all?=
=?UTF-8?q?owed?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/ISSUE_TEMPLATE/config.yml | 1 +
1 file changed, 1 insertion(+)
create mode 100644 .github/ISSUE_TEMPLATE/config.yml
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000..ec4bb38
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1 @@
+blank_issues_enabled: false
\ No newline at end of file
From 70f4b94823dbeae76b757c6a306ef608d310730f Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 08:14:18 +0530
Subject: [PATCH 29/33] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Templ?=
=?UTF-8?q?ates=20Init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/ISSUE_TEMPLATE/----bug-report.md | 20 ++++++++++++
.github/ISSUE_TEMPLATE/---feature.md | 12 ++++++++
.github/PULL_REQUEST_TEMPLATE.md | 39 ++++++++++++++++++++++++
3 files changed, 71 insertions(+)
create mode 100644 .github/ISSUE_TEMPLATE/----bug-report.md
create mode 100644 .github/ISSUE_TEMPLATE/---feature.md
create mode 100644 .github/PULL_REQUEST_TEMPLATE.md
diff --git a/.github/ISSUE_TEMPLATE/----bug-report.md b/.github/ISSUE_TEMPLATE/----bug-report.md
new file mode 100644
index 0000000..db30f32
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/----bug-report.md
@@ -0,0 +1,20 @@
+---
+name: " \U0001F41B Bug Report"
+about: Did something not work?
+title: ''
+labels: bug
+assignees: ''
+
+---
+
+## Description of the problem
+
+## How has this issue affected you? What are you trying to accomplish?
+
+### Logs or Screenshots: (optional)
+
+### Your Environment
+
+| Software | Name/Version |
+| ---------------- | ------------ |
+| Operating System | |
diff --git a/.github/ISSUE_TEMPLATE/---feature.md b/.github/ISSUE_TEMPLATE/---feature.md
new file mode 100644
index 0000000..945a67e
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/---feature.md
@@ -0,0 +1,12 @@
+---
+name: "\U0001F308 Feature"
+about: " What cool thing would you like to add?"
+title: ''
+labels: enhancement
+assignees: ''
+
+---
+
+# What is this feature?
+# How the feature should work?
+# You have examples or an idea of how it can be implemented?
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..157b9fe
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,39 @@
+
+
+## What kind of change does this PR introduce?
+
+
+
+## What is the current behavior?
+
+
+
+## What is the new behavior?
+
+
+
+## What steps did you take to test this? This is required before I can merge, make sure to test the flow you've updated.
+
+1. Step A
+2. Step B
+3. Step C
+
+## Checklist
+
+
+
+
+
+- [ ] Documentation
+- [ ] Testing
+- [ ] Ready to be merged
+- [ ] Added myself to contributors table
+
+
+
From 492aaf6f7f0b49204eed94b22c9edafe11874a6c Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 09:38:29 +0530
Subject: [PATCH 30/33] =?UTF-8?q?=F0=9F=8C=88=20Preview=20&=20Logo=20added?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 394963c..1ce92d8 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
- GoogleDot Cursor
+
@@ -98,6 +98,19 @@ Cursor theme inspired on **google material design** for `Windows` and `Linux` wi
+#### Preview:
+
+> Detailed Cursors Informations inside [src/svgs/README.md](https://github.com/ful1e5/Google_Cursor/blob/main/src/svg/README.md)
+
+
+
+
+
+
+ GoogleDot Cursors π
+
+
+
### Manual Install
#### Linux/X11
From 81a08419d73558883b49cc7209763d2cce25ada4 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 09:42:32 +0530
Subject: [PATCH 31/33] =?UTF-8?q?=F0=9F=97=92=EF=B8=8F=20Pling.com=20ptodu?=
=?UTF-8?q?ct=20page=20docs=20init?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
PLING.bbcode | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
create mode 100644 PLING.bbcode
diff --git a/PLING.bbcode b/PLING.bbcode
new file mode 100644
index 0000000..777f068
--- /dev/null
+++ b/PLING.bbcode
@@ -0,0 +1,40 @@
+[b]GoogleDot [/b] Cursor Theme with [b]HiDPi[/b] Display support. This Cursor is built with [b][url=https://github.com/ful1e5/clickgen]clickgen[/url][/b] and render with the [b][url=https://github.com/puppeteer/puppeteer/]puppeteer[/url][/b].
+[i]Available Sizes[/i] [b]22, 24, 28, 32, 40, 48, 56, 64, 72, 80, 88, 96
+
+[/b][i]Get latest build[/i] @[b][url=https://github.com/ful1e5/Google_Cursor/actions]GitHub Actions[/url][/b]
+[i]Release Notification[/i] at [b][url=https://twitter.com/ful1e5]Twitter[/url][/b](@ful1e5)
+
+[b]Linux/X11 installation[/b]
+Get the latest stable Linux release from the [b][url=https://www.pling.com/p/1215613#files-panel]Pling[/url][/b]. Unpack [b].tar.gz[/b] file and follow these [b]commands[/b].
+
+[b]Install[/b]
+[b]For all user:[/b]
+[code]sudo mv GoogleDot /usr/share/icons[/code]
+[b]For local user:[/b]
+[code]mv GoogleDot ~/.icons[/code]
+
+[b]Uninstall[/b]
+[b]From all user:[/b]
+[code]sudo rm -r /usr/share/icons/GoogleDot[/code]
+[b]From local user:[/b]
+[code]rm -r ~/.icons/GoogleDot[/code]
+
+[b]Window installation[/b]
+[list=1]
+ [*]unzip [b]GoogleDot_Windows.zip[/b] file[/*]
+ [*]Open [b]GoogleDot_Windows/[/b] in Explorer, and [b]right-click[/b] on [b]install.inf[/b].[/*]
+ [*]Click 'Install' from the context menu, and authorise the modifications to your system.[/*]
+ [*]Open [i]Control Panel > Personalisation and Appearance > Change mouse pointers[/i], and select [b]GoogleDot Cursors[/b].[/*]
+ [*]Click '[b]Apply[/b]'.[/*]
+[/list]
+
+[b]How I help the Creator?[/b]
+[list=2]
+ [*]Give a [b]Star[/b] or [b]Follow[/b] on [b][url=https://github.com/ful1e5/Google_Cursor]GitHub[/url][/b] (issues & PullRequest are welcome).[/*]
+ [*]By giving a [b]Pling[/b] or [b][url=https://www.paypal.me/kaizkhatri]Donation[/url][/b].[/*]
+ [*][b]Download[/b] from[url=https://www.pling.com/p/1408466/] Pling.com[/url] Product page that helps to [b]increases[/b] my [b]monthly payout[/b].[/*]
+ [*][b][url=https://www.pling.com/support]Become Supporter of Pling.com[/url][/b], So we become [b]Full-Time [/b]Libre & FOSS content creator [b];)[/b][/*]
+[/list]
+
+[b]License & Terms[/b]
+'[b]GoogleDot[/b]' Cursor Theme is available under the terms of the [b]GPL-3.0[/b] license.
\ No newline at end of file
From c36619eaef81cec41e060f0c4996b9f649931262 Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 09:45:54 +0530
Subject: [PATCH 32/33] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20v1.0.0=20logs?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
CHANGELOG.md | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b616e64..1a7652e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,3 +6,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [unreleased]
+
+## [v1.0.0] - 27 Oct 2020
+
+### Added
+
+- Initial release π
+- Logo and badges
+- CI/CD Pipelines
+
+[unreleased]: https://github.com/ful1e5/Google_Cursor/compare/v1.0.0...main
+[v1.0.0]: https://github.com/ful1e5/Google_Cursor/tree/v1.0.0
From 0bc61dc54f3c6f54ad6d206a6d8710143075e15d Mon Sep 17 00:00:00 2001
From: ful1e5 <24286590+ful1e5@users.noreply.github.com>
Date: Tue, 27 Oct 2020 09:48:32 +0530
Subject: [PATCH 33/33] =?UTF-8?q?=F0=9F=A7=AA=20Build=20badge?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 1ce92d8..6cba4ae 100644
--- a/README.md
+++ b/README.md
@@ -9,9 +9,9 @@
-
+