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 diff --git a/.github/stale.yml b/.github/stale.yml new file mode 100644 index 0000000..dc90e5a --- /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 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..fcca304 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,89 @@ +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 -y 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)" + - name: Caching yarn packages + 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- + - name: Set Up NodeJS 12.x + uses: actions/setup-node@v1 + with: + node-version: "12.x" + - name: Caching pip packages + uses: actions/cache@v2 + id: pip-cache # use this to check for `cache-hit` (`steps.pip-cache.outputs.cache-hit != 'true'`) + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }} + restore-keys: | + ${{ runner.os }}-pip- + - name: Set up Python 3.8 + uses: actions/setup-python@v2 + with: + python-version: "3.8" + - name: Generating `BreezeX` Cursor Theme + run: make + continue-on-error: false + + - name: Compressing UNIX theme + run: | + tar -cvzf BreezeX-Dark.tar.gz themes/BreezeX-Dark + tar -cvzf BreezeX-Light.tar.gz themes/BreezeX-Light + + - name: Uploading `bitmaps` artifact + uses: actions/upload-artifact@v2 + with: + name: bitmaps + path: bitmaps/* + + - name: Uploading `BreezeX-Dark` UNIX Theme artifact + uses: actions/upload-artifact@v2 + with: + name: BreezeX-Dark + path: BreezeX-Dark.tar.gz + + - name: Uploading `BreezeX-Light` UNIX Theme artifact + uses: actions/upload-artifact@v2 + with: + name: BreezeX-Light + path: BreezeX-Light.tar.gz + + - name: Uploading `BreezeX-Dark` Windows Theme artifact + uses: actions/upload-artifact@v2 + with: + name: BreezeX-Dark-Windows + path: themes/BreezeX-Dark-Windows/* + + - name: Uploading `BreezeX-Light` Windows Theme artifact + uses: actions/upload-artifact@v2 + with: + name: BreezeX-Light-Windows + path: themes/BreezeX-Light-Windows/* diff --git a/bitmapper/src/config.ts b/bitmapper/src/config.ts index cf9b08b..5cfd21b 100644 --- a/bitmapper/src/config.ts +++ b/bitmapper/src/config.ts @@ -5,22 +5,22 @@ interface Config { color: Colors; } -const breeze = "#4D4D4D"; -const white = "#FFFFFF"; +const breezeColor = "#4D4D4D"; +const whiteColor = "#FFFFFF"; const config: Config[] = [ { themeName: "BreezeX-Dark", color: { - base: breeze, - outline: white, + base: breezeColor, + outline: whiteColor, }, }, { themeName: "BreezeX-Light", color: { - base: white, - outline: breeze, + base: whiteColor, + outline: breezeColor, }, }, ]; diff --git a/bitmapper/src/index.ts b/bitmapper/src/index.ts index 7873c9e..ca6ab21 100644 --- a/bitmapper/src/index.ts +++ b/bitmapper/src/index.ts @@ -27,7 +27,7 @@ const main = async () => { console.log(" -> Saving", key, "..."); content = SVGHandler.colorSvg(content, color); - await png.generateAnimated(browser, content, key); + await png.generateAnimated(browser, content, key, { playbackRate: 0.3 }); } await browser.close(); diff --git a/bitmapper/yarn.lock b/bitmapper/yarn.lock index f7d1e41..83738ad 100644 --- a/bitmapper/yarn.lock +++ b/bitmapper/yarn.lock @@ -15,9 +15,9 @@ defer-to-connect "^1.0.1" "@types/node@*": - version "14.14.41" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.41.tgz#d0b939d94c1d7bd53d04824af45f1139b8c45615" - integrity sha512-dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g== + version "15.12.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-15.12.0.tgz#6a459d261450a300e6865faeddb5af01c3389bb3" + integrity sha512-+aHJvoCsVhO2ZCuT4o5JtcPrCPyDE3+1nvbDprYes+pPkEsbjH7AGUCNtjMOXS0fqH14t+B7yLzaqSz92FPWyw== "@types/pixelmatch@^5.2.2": version "5.2.3" @@ -419,9 +419,9 @@ glob-parent@~5.1.0: is-glob "^4.0.1" glob@^7.1.3: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -723,9 +723,9 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-url@^4.1.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" - integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== + version "4.5.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" @@ -784,9 +784,9 @@ pend@~1.2.0: integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= picomatch@^2.0.4, picomatch@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" - integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg== + version "2.3.0" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" + integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== pixelmatch@^5.2.1: version "5.2.1" @@ -1092,9 +1092,9 @@ typedarray-to-buffer@^3.1.5: is-typedarray "^1.0.0" typescript@^4.1.3: - version "4.2.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" - integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== + version "4.3.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.2.tgz#399ab18aac45802d6f2498de5054fcbbe716a805" + integrity sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw== unbzip2-stream@^1.3.3: version "1.4.3" @@ -1172,9 +1172,9 @@ write-file-atomic@^3.0.0: typedarray-to-buffer "^3.1.5" ws@^7.2.3: - version "7.4.4" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" - integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== xdg-basedir@^4.0.0: version "4.0.0" diff --git a/builder/build.py b/builder/build.py index 782387f..1cd0f3e 100644 --- a/builder/build.py +++ b/builder/build.py @@ -4,8 +4,8 @@ import argparse from pathlib import Path -from bxbuild.configure import get_config -from bxbuild.generator import Info, build, wbuild, xbuild +from bxbuild.configure import get_config # type: ignore +from bxbuild.generator import Info, build, wbuild, xbuild # type: ignore parser = argparse.ArgumentParser( prog="breezex_builder", @@ -51,20 +51,7 @@ parser.add_argument( dest="xsizes", metavar="INT", nargs="+", - default=[ - 22, - 24, - 28, - 32, - 40, - 48, - 56, - 64, - 72, - 80, - 88, - 96, - ], + default=[22, 24, 28, 32, 40, 48, 56, 64, 72, 80, 88, 96], type=int, help="Set pixel-size for xcursor. (default: %(default)s)", ) diff --git a/builder/bxbuild/constants.py b/builder/bxbuild/constants.py index a402071..e44bf37 100644 --- a/builder/bxbuild/constants.py +++ b/builder/bxbuild/constants.py @@ -19,47 +19,53 @@ X_CURSORS_CFG: Dict[str, Dict[str, int]] = { # Static # ########## "all-scroll.png": {"xhot": 100, "yhot": 100}, - "bottom_left_corner.png": {"xhot": 100, "yhot": 100}, - "bottom_right_corner.png": {"xhot": 100, "yhot": 100}, - "bottom_tee.png": {"xhot": 100, "yhot": 100}, - "context-menu.png": {"xhot": 100, "yhot": 100}, - "copy.png": {"xhot": 100, "yhot": 100}, + "bd_double_arrow.png": {"xhot": 98, "yhot": 96}, + "bottom_left_corner.png": {"xhot": 56, "yhot": 143}, + "bottom_right_corner.png": {"xhot": 142, "yhot": 147}, + "bottom_side.png": {"xhot": 100, "yhot": 148}, + "center_ptr.png": {"xhot": 99, "yhot": 35}, + "col-resize.png": {"xhot": 100, "yhot": 100}, + "color-picker.png": {"xhot": 42, "yhot": 157}, + "context-menu.png": {"xhot": 57, "yhot": 30}, + "copy.png": {"xhot": 57, "yhot": 30}, "cross.png": {"xhot": 100, "yhot": 100}, + "crossed_circle.png": {"xhot": 57, "yhot": 30}, "dnd_no_drop.png": {"xhot": 100, "yhot": 100}, "dotbox.png": {"xhot": 100, "yhot": 100}, - "hand1.png": {"xhot": 100, "yhot": 100}, - "hand2.png": {"xhot": 100, "yhot": 100}, - "left_ptr.png": {"xhot": 100, "yhot": 100}, - "left_tee.png": {"xhot": 100, "yhot": 100}, - "link.png": {"xhot": 100, "yhot": 100}, - "ll_angle.png": {"xhot": 100, "yhot": 100}, - "lr_angle.png": {"xhot": 100, "yhot": 100}, - "move.png": {"xhot": 100, "yhot": 100}, - "pencil.png": {"xhot": 100, "yhot": 100}, + "fd_double_arrow.png": {"xhot": 98, "yhot": 96}, + "hand1.png": {"xhot": 107, "yhot": 35}, + "hand2.png": {"xhot": 90, "yhot": 35}, + "left_ptr.png": {"xhot": 57, "yhot": 30}, + "left_side.png": {"xhot": 52, "yhot": 100}, + "link.png": {"xhot": 57, "yhot": 30}, + "move.png": {"xhot": 101, "yhot": 51}, + "pencil.png": {"xhot": 38, "yhot": 156}, + "pirate.png": {"xhot": 100, "yhot": 100}, "plus.png": {"xhot": 100, "yhot": 100}, - "question_arrow.png": {"xhot": 100, "yhot": 100}, - "right_ptr.png": {"xhot": 100, "yhot": 100}, - "right_tee.png": {"xhot": 100, "yhot": 100}, - "sb_down_arrow.png": {"xhot": 100, "yhot": 100}, - "sb_h_double_arrow.png": {"xhot": 100, "yhot": 100}, - "sb_left_arrow.png": {"xhot": 100, "yhot": 100}, - "sb_right_arrow.png": {"xhot": 100, "yhot": 100}, - "sb_up_arrow.png": {"xhot": 100, "yhot": 100}, - "sb_v_double_arrow.png": {"xhot": 100, "yhot": 100}, - "top_tee.png": {"xhot": 100, "yhot": 100}, - "ul_angle.png": {"xhot": 100, "yhot": 100}, - "ur_angle.png": {"xhot": 100, "yhot": 100}, + "question_arrow.png": {"xhot": 57, "yhot": 30}, + "right_ptr.png": {"xhot": 136, "yhot": 32}, + "right_side.png": {"xhot": 147, "yhot": 100}, + "row-resize.png": {"xhot": 100, "yhot": 100}, + "sb_down_arrow.png": {"xhot": 100, "yhot": 160}, + "sb_h_double_arrow.png": {"xhot": 98, "yhot": 96}, + "sb_left_arrow.png": {"xhot": 38, "yhot": 100}, + "sb_right_arrow.png": {"xhot": 162, "yhot": 100}, + "sb_up_arrow.png": {"xhot": 100, "yhot": 38}, + "sb_v_double_arrow.png": {"xhot": 98, "yhot": 96}, + "top_left_corner.png": {"xhot": 57, "yhot": 55}, + "top_right_corner.png": {"xhot": 142, "yhot": 55}, + "top_side.png": {"xhot": 100, "yhot": 52}, "vertical-text.png": {"xhot": 100, "yhot": 100}, "wayland-cursor.png": {"xhot": 100, "yhot": 100}, "X_cursor.png": {"xhot": 100, "yhot": 100}, - "xterm.png": {"xhot": 100, "yhot": 89}, - "zoom-in.png": {"xhot": 100, "yhot": 100}, - "zoom-out.png": {"xhot": 100, "yhot": 100}, + "xterm.png": {"xhot": 100, "yhot": 100}, + "zoom-in.png": {"xhot": 85, "yhot": 80}, + "zoom-out.png": {"xhot": 85, "yhot": 80}, ############ # Animated # ############ - # Note: Animated cursors don't need an extension and frame numbers. - "left_ptr_watch": {"xhot": 100, "yhot": 100}, + # NOTE: Animated cursors don't need an extension and frame numbers. + "left_ptr_watch": {"xhot": 57, "yhot": 30}, "wait": {"xhot": 100, "yhot": 100}, } @@ -70,10 +76,10 @@ WIN_CURSORS_CFG: Dict[str, Dict[str, str]] = { "right_ptr.png": {"to": "Alternate", "position": "top_right"}, "cross.png": {"to": "Cross"}, "left_ptr.png": {"to": "Default", "position": "top_left"}, - "bottom_right_corner.png": {"to": "Diagonal_1"}, - "bottom_left_corner.png": {"to": "Diagonal_2"}, + "bd_double_arrow.png": {"to": "Diagonal_1"}, + "fd_double_arrow.png": {"to": "Diagonal_2"}, "pencil.png": {"to": "Handwriting"}, - "question_arrow.png": {"to": "Help", "position.png": "top_left"}, + "question_arrow.png": {"to": "Help", "position": "top_left"}, "sb_h_double_arrow.png": {"to": "Horizontal"}, "xterm.png": {"to": "IBeam", "position": "top_left"}, "hand2.png": {"to": "Link", "position": "top_left"}, @@ -83,7 +89,7 @@ WIN_CURSORS_CFG: Dict[str, Dict[str, str]] = { ############ # Animated # ############ - # Note: Animated cursors don't need frame numbers. + # NOTE: Animated cursors don't need frame numbers. "left_ptr_watch": {"to": "Work", "position": "top_left"}, "wait": {"to": "Busy"}, } diff --git a/builder/bxbuild/generator.py b/builder/bxbuild/generator.py index fdd7fe5..9dcef11 100644 --- a/builder/bxbuild/generator.py +++ b/builder/bxbuild/generator.py @@ -21,14 +21,14 @@ def xbuild(config: Dict[str, Dict[str, Any]], x_out_dir: Path, info: Info) -> No """Build `BreezeX` cursor theme for only `X11`(UNIX) platform. :param config: `BreezeX` configuration. - :type config: Dict + :type config: ``Dict`` :param x_out_dir: Path to the output directory,\ Where the `X11` cursor theme package will generate.\ It also creates a directory if not exists. - :type x_out_dir: Path + :type x_out_dir: ``pathlib.Path`` - :param info: Content theme name & comment + :param info: Content theme name & comment. :type info: Info """ @@ -47,14 +47,14 @@ def wbuild(config: Dict[str, Dict[str, Any]], win_out_dir: Path, info: Info) -> """Build `BreezeX` cursor theme for only `Windows` platforms. :param config: `BreezeX` configuration. - :type config: Dict + :type config: ``Dict`` :param win_out_dir: Path to the output directory,\ Where the `Windows` cursor theme package will generate.\ It also creates a directory if not exists. - :type win_out_dir: Path + :type win_out_dir: ``pathlib.Path`` - :param info: Content theme name & comment + :param info: Content theme name & comment. :type info: Info """ @@ -82,19 +82,19 @@ def build( """Build `BreezeX` cursor theme for `X11` & `Windows` platforms. :param config: `BreezeX` configuration. - :type config: Dict + :type config: ``Dict`` :param x_out_dir: Path to the output directory,\ Where the `X11` cursor theme package will generate.\ It also creates a directory if not exists. - :type x_out_dir: Path + :type x_out_dir: ``pathlib.Path`` :param win_out_dir: Path to the output directory,\ Where the `Windows` cursor theme package will generate.\ It also creates a directory if not exists. - :type win_out_dir: Path + :type win_out_dir: ``pathlib.Path`` - :param info: Content theme name & comment + :param info: Content theme name & comment. :type info: Info """ diff --git a/builder/bxbuild/symlinks.py b/builder/bxbuild/symlinks.py index d80480d..fda0d93 100644 --- a/builder/bxbuild/symlinks.py +++ b/builder/bxbuild/symlinks.py @@ -11,33 +11,25 @@ def add_missing_xcursor(directory) -> None: """Add missing `XCursor` to the Unix cursor package. :param directory: directory where XCursors are available. - :type directory: Union[str, Path] + :type directory: ``str`` or ``pathlib.Path`` """ symlinks: List[Dict[str, Union[str, List[str]]]] = [ {"src": "all-scroll", "links": ["fleur", "size_all"]}, { - "src": "bottom_left_corner", + "src": "bd_double_arrow", "links": [ - "fcf1c3c7cd4491d801f1e1c78f100000", - "sw-resize", - "ne-resize", - "size_bdiag", - "nesw-resize", - "top_right_corner", - "fd_double_arrow", + "c7088f0f3e6c8088236ef8e1e3e70000", + "nw-resize", + "nwse-resize", + "size_fdiag", + "se-resize", ], }, { - "src": "bottom_right_corner", + "src": "col-resize", "links": [ - "c7088f0f3e6c8088236ef8e1e3e70000", - "top_left_corner", - "se-resize", - "nw-resize", - "size_fdiag", - "nwse-resize", - "bd_double_arrow", + "split_h", ], }, { @@ -55,23 +47,36 @@ def add_missing_xcursor(directory) -> None: "cross_reverse", "diamond_cross", "tcross", - "color-picker", "crosshair", ], }, + { + "src": "crossed_circle", + "links": [ + "forbidden", + "not-allowed", + ], + }, { "src": "dnd_no_drop", "links": [ - "no-drop", - # crossed_circle symlinks - "crossed_circle", "03b6e0fcb3499374a867c041f52298f0", - "not-allowed", - "forbidden", "circle", + "dnd-no-drop", + "no-drop", ], }, {"src": "dotbox", "links": ["dot_box_mask", "draped_box", "icon", "target"]}, + { + "src": "fd_double_arrow", + "links": [ + "fcf1c3c7cd4491d801f1e1c78f100000", + "ne-resize", + "nesw-resize", + "sw-resize", + "size_bdiag", + ], + }, {"src": "hand1", "links": ["grab", "openhand"]}, { "src": "hand2", @@ -87,7 +92,6 @@ def add_missing_xcursor(directory) -> None: "links": [ "arrow", "default", - "center_ptr", ], }, { @@ -99,6 +103,7 @@ def add_missing_xcursor(directory) -> None: "progress", ], }, + {"src": "left_side", "links": []}, { "src": "link", "links": [ @@ -135,23 +140,25 @@ def add_missing_xcursor(directory) -> None: "dnd-ask", ], }, - {"src": "right_ptr", "links": ["draft_large", "draft_small"]}, # required + {"src": "right_ptr", "links": ["draft_large", "draft_small"]}, + { + "src": "row-resize", + "links": [ + "split_v", + ], + }, {"src": "sb_down_arrow", "links": ["down-arrow"]}, { "src": "sb_h_double_arrow", "links": [ "028006030e0e7ebffc7f7070c0600140", "14fef782d02440884392942c1120523", - "col-resize", + "e-resize", "ew-resize", "h_double_arrow", "size-hor", "size_hor", - "split_h", - "left_side", "w-resize", - "right_side", - "e-resize", ], }, {"src": "sb_left_arrow", "links": ["left-arrow"]}, @@ -163,20 +170,16 @@ def add_missing_xcursor(directory) -> None: "00008160000006810000408080010102", "2870a09082c103050810ffdffffe0204", "double_arrow", + "n-resize", "ns-resize", - "row-resize", "size-ver", "size_ver", - "split_v", - "v_double_arrow", - "top_side", "s-resize", - "n-resize", - "bottom_side", + "v_double_arrow", ], }, {"src": "wait", "links": ["watch"]}, - {"src": "X_cursor", "links": ["pirate", "x-cursor"]}, + {"src": "X_cursor", "links": ["x-cursor"]}, {"src": "xterm", "links": ["ibeam", "text"]}, ] diff --git a/svg/animated/left_ptr_watch.svg b/svg/animated/left_ptr_watch.svg new file mode 100644 index 0000000..49392ab --- /dev/null +++ b/svg/animated/left_ptr_watch.svg @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/animated/wait.svg b/svg/animated/wait.svg new file mode 100644 index 0000000..fe644cc --- /dev/null +++ b/svg/animated/wait.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/X_cursor.svg b/svg/static/X_cursor.svg new file mode 100644 index 0000000..574d673 --- /dev/null +++ b/svg/static/X_cursor.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/all-scroll.svg b/svg/static/all-scroll.svg index a85f23e..165d2ab 100644 --- a/svg/static/all-scroll.svg +++ b/svg/static/all-scroll.svg @@ -1,21 +1,21 @@ - - - - - - - - - - + + + + + + + + + + - - - - + + + + diff --git a/svg/static/bd_double_arrow.svg b/svg/static/bd_double_arrow.svg new file mode 100644 index 0000000..4d1c066 --- /dev/null +++ b/svg/static/bd_double_arrow.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/bottom_left_corner.svg b/svg/static/bottom_left_corner.svg new file mode 100644 index 0000000..260b94f --- /dev/null +++ b/svg/static/bottom_left_corner.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/bottom_right_corner.svg b/svg/static/bottom_right_corner.svg new file mode 100644 index 0000000..63621c9 --- /dev/null +++ b/svg/static/bottom_right_corner.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/bottom_side.svg b/svg/static/bottom_side.svg new file mode 100644 index 0000000..d31c0e5 --- /dev/null +++ b/svg/static/bottom_side.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/center_ptr.svg b/svg/static/center_ptr.svg index 67bd198..8f6cfbe 100644 --- a/svg/static/center_ptr.svg +++ b/svg/static/center_ptr.svg @@ -1,10 +1,10 @@ - - + + - + diff --git a/svg/static/col-resize.svg b/svg/static/col-resize.svg new file mode 100644 index 0000000..650a513 --- /dev/null +++ b/svg/static/col-resize.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/color-picker.svg b/svg/static/color-picker.svg new file mode 100644 index 0000000..5cf88f6 --- /dev/null +++ b/svg/static/color-picker.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/svg/static/context-menu.svg b/svg/static/context-menu.svg new file mode 100644 index 0000000..091f60b --- /dev/null +++ b/svg/static/context-menu.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/copy.svg b/svg/static/copy.svg index 2ac31c9..2ddb608 100644 --- a/svg/static/copy.svg +++ b/svg/static/copy.svg @@ -1,10 +1,10 @@ - - + + - + diff --git a/svg/static/cross.svg b/svg/static/cross.svg new file mode 100644 index 0000000..f08edf2 --- /dev/null +++ b/svg/static/cross.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/crossed_circle.svg b/svg/static/crossed_circle.svg index f800c7f..b6fadcc 100644 --- a/svg/static/crossed_circle.svg +++ b/svg/static/crossed_circle.svg @@ -1,10 +1,10 @@ - - + + - + diff --git a/svg/static/dnd_no_drop.svg b/svg/static/dnd_no_drop.svg index 2f0ec78..20fddf7 100644 --- a/svg/static/dnd_no_drop.svg +++ b/svg/static/dnd_no_drop.svg @@ -3,8 +3,8 @@ - - + + diff --git a/svg/static/dotbox.svg b/svg/static/dotbox.svg new file mode 100644 index 0000000..2648368 --- /dev/null +++ b/svg/static/dotbox.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/fd_double_arrow.svg b/svg/static/fd_double_arrow.svg new file mode 100644 index 0000000..47fdcf6 --- /dev/null +++ b/svg/static/fd_double_arrow.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/hand1.svg b/svg/static/hand1.svg new file mode 100644 index 0000000..3797f8b --- /dev/null +++ b/svg/static/hand1.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/svg/static/hand2.svg b/svg/static/hand2.svg new file mode 100644 index 0000000..2170d31 --- /dev/null +++ b/svg/static/hand2.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/svg/static/left_ptr.svg b/svg/static/left_ptr.svg index 0c05a26..a3e4434 100644 --- a/svg/static/left_ptr.svg +++ b/svg/static/left_ptr.svg @@ -1,10 +1,10 @@ - - + + - + diff --git a/svg/static/left_side.svg b/svg/static/left_side.svg new file mode 100644 index 0000000..f04def7 --- /dev/null +++ b/svg/static/left_side.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/link.svg b/svg/static/link.svg new file mode 100644 index 0000000..564644f --- /dev/null +++ b/svg/static/link.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/move.svg b/svg/static/move.svg new file mode 100644 index 0000000..99397bd --- /dev/null +++ b/svg/static/move.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/svg/static/pencil.svg b/svg/static/pencil.svg new file mode 100644 index 0000000..ae81322 --- /dev/null +++ b/svg/static/pencil.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/svg/static/pirate.svg b/svg/static/pirate.svg new file mode 100644 index 0000000..fe1782c --- /dev/null +++ b/svg/static/pirate.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/plus.svg b/svg/static/plus.svg new file mode 100644 index 0000000..7452f79 --- /dev/null +++ b/svg/static/plus.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/question_arrow.svg b/svg/static/question_arrow.svg index e4eca77..2d62c1f 100644 --- a/svg/static/question_arrow.svg +++ b/svg/static/question_arrow.svg @@ -1,10 +1,10 @@ - - + + - + diff --git a/svg/static/right_ptr.svg b/svg/static/right_ptr.svg index 8e724e0..65e1975 100644 --- a/svg/static/right_ptr.svg +++ b/svg/static/right_ptr.svg @@ -1,10 +1,10 @@ - - + + - + diff --git a/svg/static/right_side.svg b/svg/static/right_side.svg new file mode 100644 index 0000000..06d6a2f --- /dev/null +++ b/svg/static/right_side.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/row-resize.svg b/svg/static/row-resize.svg new file mode 100644 index 0000000..c2772c2 --- /dev/null +++ b/svg/static/row-resize.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/sb_down_arrow.svg b/svg/static/sb_down_arrow.svg new file mode 100644 index 0000000..7b6e37a --- /dev/null +++ b/svg/static/sb_down_arrow.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/sb_h_double_arrow.svg b/svg/static/sb_h_double_arrow.svg new file mode 100644 index 0000000..b772f77 --- /dev/null +++ b/svg/static/sb_h_double_arrow.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/sb_left_arrow.svg b/svg/static/sb_left_arrow.svg new file mode 100644 index 0000000..19216df --- /dev/null +++ b/svg/static/sb_left_arrow.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/sb_right_arrow.svg b/svg/static/sb_right_arrow.svg new file mode 100644 index 0000000..91586d1 --- /dev/null +++ b/svg/static/sb_right_arrow.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/sb_up_arrow.svg b/svg/static/sb_up_arrow.svg new file mode 100644 index 0000000..0812332 --- /dev/null +++ b/svg/static/sb_up_arrow.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/sb_v_double_arrow.svg b/svg/static/sb_v_double_arrow.svg new file mode 100644 index 0000000..b4d97ec --- /dev/null +++ b/svg/static/sb_v_double_arrow.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/top_left_corner.svg b/svg/static/top_left_corner.svg new file mode 100644 index 0000000..e22ab1c --- /dev/null +++ b/svg/static/top_left_corner.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/top_right_corner.svg b/svg/static/top_right_corner.svg new file mode 100644 index 0000000..68c9d6d --- /dev/null +++ b/svg/static/top_right_corner.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/top_side.svg b/svg/static/top_side.svg new file mode 100644 index 0000000..8746f89 --- /dev/null +++ b/svg/static/top_side.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/vertical-text.svg b/svg/static/vertical-text.svg new file mode 100644 index 0000000..055a413 --- /dev/null +++ b/svg/static/vertical-text.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/wayland-cursor.svg b/svg/static/wayland-cursor.svg new file mode 100644 index 0000000..df185a4 --- /dev/null +++ b/svg/static/wayland-cursor.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/xterm.svg b/svg/static/xterm.svg new file mode 100644 index 0000000..9e7af98 --- /dev/null +++ b/svg/static/xterm.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/svg/static/zoom-in.svg b/svg/static/zoom-in.svg new file mode 100644 index 0000000..6d75054 --- /dev/null +++ b/svg/static/zoom-in.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/svg/static/zoom-out.svg b/svg/static/zoom-out.svg new file mode 100644 index 0000000..f8a6048 --- /dev/null +++ b/svg/static/zoom-out.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + +