diff --git a/app/lib/renderers/utilities.dart b/app/lib/renderers/utilities.dart index 594e3d141b08..b91d2381ef69 100644 --- a/app/lib/renderers/utilities.dart +++ b/app/lib/renderers/utilities.dart @@ -86,7 +86,7 @@ class UtilitiesRenderer extends Renderer { // Paint ruler background canvas.save(); - canvas.translate(-transform.position.dx, -transform.position.dy); + canvas.translate(transform.position.dx, transform.position.dy); canvas.scale(1 / transform.size, 1 / transform.size); canvas.translate(size.width / 2 + element.rulerPosition.x, size.height / 2 + element.rulerPosition.y); diff --git a/app/pubspec.lock b/app/pubspec.lock index 28428295feca..a6f2a4f880c1 100644 --- a/app/pubspec.lock +++ b/app/pubspec.lock @@ -1141,10 +1141,10 @@ packages: dependency: transitive description: name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" pubspec_parse: dependency: transitive description: diff --git a/docs/package.json b/docs/package.json index 606ed5441b6e..c4c089e5abce 100644 --- a/docs/package.json +++ b/docs/package.json @@ -14,8 +14,8 @@ "@astrojs/react": "^3.6.3", "@astrojs/starlight": "^0.29.2", "@phosphor-icons/react": "^2.1.7", - "@types/react": "^18.3.14", - "@types/react-dom": "^18.3.3", + "@types/react": "^18.3.16", + "@types/react-dom": "^18.3.5", "astro": "^4.16.17", "react": "^18.3.1", "react-dom": "^18.3.1", diff --git a/docs/pnpm-lock.yaml b/docs/pnpm-lock.yaml index a011d688b3be..e40972dc178e 100644 --- a/docs/pnpm-lock.yaml +++ b/docs/pnpm-lock.yaml @@ -13,7 +13,7 @@ importers: version: 0.9.4(typescript@5.7.2) '@astrojs/react': specifier: ^3.6.3 - version: 3.6.3(@types/react-dom@18.3.3(@types/react@18.3.14))(@types/react@18.3.14)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.82.0)(terser@5.36.0) + version: 3.6.3(@types/react-dom@18.3.5(@types/react@18.3.16))(@types/react@18.3.16)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.82.0)(terser@5.36.0) '@astrojs/starlight': specifier: ^0.29.2 version: 0.29.2(astro@4.16.17(rollup@4.28.1)(sass@1.82.0)(terser@5.36.0)(typescript@5.7.2)) @@ -21,11 +21,11 @@ importers: specifier: ^2.1.7 version: 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/react': - specifier: ^18.3.14 - version: 18.3.14 + specifier: ^18.3.16 + version: 18.3.16 '@types/react-dom': - specifier: ^18.3.3 - version: 18.3.3(@types/react@18.3.14) + specifier: ^18.3.5 + version: 18.3.5(@types/react@18.3.16) astro: specifier: ^4.16.17 version: 4.16.17(rollup@4.28.1)(sass@1.82.0)(terser@5.36.0)(typescript@5.7.2) @@ -761,20 +761,20 @@ packages: cpu: [x64] os: [win32] - '@shikijs/core@1.24.1': - resolution: {integrity: sha512-3q/9oarMVcLqJ+NQOdKL40dJVq/UKCsiWXz3QRQPBglHqa8dDJ0p6TuMuk2gHphy5FZcvFtg4UHBgpW0JtZ8+A==} + '@shikijs/core@1.24.2': + resolution: {integrity: sha512-BpbNUSKIwbKrRRA+BQj0BEWSw+8kOPKDJevWeSE/xIqGX7K0xrCZQ9kK0nnEQyrzsUoka1l81ZtJ2mGaCA32HQ==} - '@shikijs/engine-javascript@1.24.1': - resolution: {integrity: sha512-lNgUSHYDYaQ6daj4lJJqcY2Ru9LgHwpFoposJkRVRPh21Yg4kaPFRhzaWoSg3PliwcDOpDuMy3xsmQaJp201Fg==} + '@shikijs/engine-javascript@1.24.2': + resolution: {integrity: sha512-EqsmYBJdLEwEiO4H+oExz34a5GhhnVp+jH9Q/XjPjmBPc6TE/x4/gD0X3i0EbkKKNqXYHHJTJUpOLRQNkEzS9Q==} - '@shikijs/engine-oniguruma@1.24.1': - resolution: {integrity: sha512-KdrTIBIONWd+Xs61eh8HdIpfigtrseat9dpARvaOe2x0g/FNTbwbkGr3y92VSOVD1XotzEskh3v/nCzyWjkf7g==} + '@shikijs/engine-oniguruma@1.24.2': + resolution: {integrity: sha512-ZN6k//aDNWRJs1uKB12pturKHh7GejKugowOFGAuG7TxDRLod1Bd5JhpOikOiFqPmKjKEPtEA6mRCf7q3ulDyQ==} - '@shikijs/types@1.24.1': - resolution: {integrity: sha512-ZwZFbShFY/APfKNt3s9Gv8rhTm29GodSKsOW66X6N+HGsZuaHalE1VUEX4fv93UXHTZTLjb3uxn63F96RhGfXw==} + '@shikijs/types@1.24.2': + resolution: {integrity: sha512-bdeWZiDtajGLG9BudI0AHet0b6e7FbR0EsE4jpGaI0YwHm/XJunI9+3uZnzFtX65gsyJ6ngCIWUfA4NWRPnBkQ==} - '@shikijs/vscode-textmate@9.3.0': - resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} + '@shikijs/vscode-textmate@9.3.1': + resolution: {integrity: sha512-79QfK1393x9Ho60QFyLti+QfdJzRQCVLFb97kOIV7Eo9vQU/roINgk7m24uv0a7AUvN//RDH36FLjjK48v0s9g==} '@types/acorn@4.0.6': resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} @@ -824,13 +824,13 @@ packages: '@types/prop-types@15.7.14': resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} - '@types/react-dom@18.3.3': - resolution: {integrity: sha512-uTYkxTLkYp41nq/ULXyXMtkNT1vu5fXJoqad6uTNCOGat5t9cLgF4vMNLBXsTOXpdOI44XzKPY1M5RRm0bQHuw==} + '@types/react-dom@18.3.5': + resolution: {integrity: sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==} peerDependencies: '@types/react': ^18.0.0 - '@types/react@18.3.14': - resolution: {integrity: sha512-NzahNKvjNhVjuPBQ+2G7WlxstQ+47kXZNHlUvFakDViuIEfGY926GqhMueQFZ7woG+sPiQKlF36XfrIUVSUfFg==} + '@types/react@18.3.16': + resolution: {integrity: sha512-oh8AMIC4Y2ciKufU8hnKgs+ufgbA/dhPTACaZPM86AbwX9QwnFtSoPWEeRUj8fge+v6kFt78BXcDhAU1SrrAsw==} '@types/sax@1.2.7': resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} @@ -1121,8 +1121,8 @@ packages: resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} engines: {node: '>=4'} - electron-to-chromium@1.5.71: - resolution: {integrity: sha512-dB68l59BI75W1BUGVTAEJy45CEVuEGy9qPVVQ8pnHyHMn36PLPPoE1mjLH+lo9rKulO3HC2OhbACI/8tCqJBcA==} + electron-to-chromium@1.5.72: + resolution: {integrity: sha512-ZpSAUOZ2Izby7qnZluSrAlGgGQzucmFbN0n64dYzocYxnxV5ufurpj3VgEe4cUp7ir9LmeLxNYo8bVnlM8bQHw==} emmet@2.4.11: resolution: {integrity: sha512-23QPJB3moh/U9sT4rQzGgeyyGIrcM+GH5uVYg2C6wZIxAIJq7Ng3QLT79tl8FUwDXhyq9SusfknOrofAKqvgyQ==} @@ -1437,8 +1437,8 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true - jsesc@3.0.2: - resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} hasBin: true @@ -1493,8 +1493,8 @@ packages: lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - magic-string@0.30.14: - resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==} + magic-string@0.30.15: + resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==} magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -1705,8 +1705,8 @@ packages: node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} - node-releases@2.0.18: - resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} @@ -1983,8 +1983,8 @@ packages: resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - shiki@1.24.1: - resolution: {integrity: sha512-/qByWMg05+POb63c/OvnrU17FcCUa34WU4F6FCrd/mjDPEDPl8YUNRkRMbo8l3iYMLydfCgxi1r37JFoSw8A4A==} + shiki@1.24.2: + resolution: {integrity: sha512-TR1fi6mkRrzW+SKT5G6uKuc32Dj2EEa7Kj0k8kGqiBINb+C1TiflVOiT9ta6GqOJtC4fraxO5SLUaKBcSY38Fg==} signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} @@ -2385,8 +2385,8 @@ packages: typescript: ^4.9.4 || ^5.0.2 zod: ^3 - zod@3.23.8: - resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} + zod@3.24.1: + resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -2450,7 +2450,7 @@ snapshots: remark-parse: 11.0.0 remark-rehype: 11.1.1 remark-smartypants: 3.0.2 - shiki: 1.24.1 + shiki: 1.24.2 unified: 11.0.5 unist-util-remove-position: 5.0.0 unist-util-visit: 5.0.0 @@ -2483,10 +2483,10 @@ snapshots: dependencies: prismjs: 1.29.0 - '@astrojs/react@3.6.3(@types/react-dom@18.3.3(@types/react@18.3.14))(@types/react@18.3.14)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.82.0)(terser@5.36.0)': + '@astrojs/react@3.6.3(@types/react-dom@18.3.5(@types/react@18.3.16))(@types/react@18.3.16)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.82.0)(terser@5.36.0)': dependencies: - '@types/react': 18.3.14 - '@types/react-dom': 18.3.3(@types/react@18.3.14) + '@types/react': 18.3.16 + '@types/react-dom': 18.3.5(@types/react@18.3.16) '@vitejs/plugin-react': 4.3.4(vite@5.4.11(sass@1.82.0)(terser@5.36.0)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -2507,7 +2507,7 @@ snapshots: dependencies: sitemap: 8.0.0 stream-replace-string: 2.0.0 - zod: 3.23.8 + zod: 3.24.1 '@astrojs/starlight@0.29.2(astro@4.16.17(rollup@4.28.1)(sass@1.82.0)(terser@5.36.0)(typescript@5.7.2))': dependencies: @@ -2588,7 +2588,7 @@ snapshots: '@babel/types': 7.26.3 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.0.2 + jsesc: 3.1.0 '@babel/helper-annotate-as-pure@7.25.9': dependencies: @@ -2806,7 +2806,7 @@ snapshots: '@expressive-code/plugin-shiki@0.38.3': dependencies: '@expressive-code/core': 0.38.3 - shiki: 1.24.1 + shiki: 1.24.2 '@expressive-code/plugin-text-markers@0.38.3': dependencies: @@ -3102,32 +3102,32 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.28.1': optional: true - '@shikijs/core@1.24.1': + '@shikijs/core@1.24.2': dependencies: - '@shikijs/engine-javascript': 1.24.1 - '@shikijs/engine-oniguruma': 1.24.1 - '@shikijs/types': 1.24.1 - '@shikijs/vscode-textmate': 9.3.0 + '@shikijs/engine-javascript': 1.24.2 + '@shikijs/engine-oniguruma': 1.24.2 + '@shikijs/types': 1.24.2 + '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 - '@shikijs/engine-javascript@1.24.1': + '@shikijs/engine-javascript@1.24.2': dependencies: - '@shikijs/types': 1.24.1 - '@shikijs/vscode-textmate': 9.3.0 + '@shikijs/types': 1.24.2 + '@shikijs/vscode-textmate': 9.3.1 oniguruma-to-es: 0.7.0 - '@shikijs/engine-oniguruma@1.24.1': + '@shikijs/engine-oniguruma@1.24.2': dependencies: - '@shikijs/types': 1.24.1 - '@shikijs/vscode-textmate': 9.3.0 + '@shikijs/types': 1.24.2 + '@shikijs/vscode-textmate': 9.3.1 - '@shikijs/types@1.24.1': + '@shikijs/types@1.24.2': dependencies: - '@shikijs/vscode-textmate': 9.3.0 + '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 - '@shikijs/vscode-textmate@9.3.0': {} + '@shikijs/vscode-textmate@9.3.1': {} '@types/acorn@4.0.6': dependencies: @@ -3186,11 +3186,11 @@ snapshots: '@types/prop-types@15.7.14': {} - '@types/react-dom@18.3.3(@types/react@18.3.14)': + '@types/react-dom@18.3.5(@types/react@18.3.16)': dependencies: - '@types/react': 18.3.14 + '@types/react': 18.3.16 - '@types/react@18.3.14': + '@types/react@18.3.16': dependencies: '@types/prop-types': 15.7.14 csstype: 3.1.3 @@ -3351,7 +3351,7 @@ snapshots: http-cache-semantics: 4.1.1 js-yaml: 4.1.0 kleur: 4.1.5 - magic-string: 0.30.14 + magic-string: 0.30.15 magicast: 0.3.5 micromatch: 4.0.8 mrmime: 2.0.0 @@ -3363,7 +3363,7 @@ snapshots: prompts: 2.4.2 rehype: 13.0.2 semver: 7.6.3 - shiki: 1.24.1 + shiki: 1.24.2 tinyexec: 0.3.1 tsconfck: 3.1.4(typescript@5.7.2) unist-util-visit: 5.0.0 @@ -3373,9 +3373,9 @@ snapshots: which-pm: 3.0.0 xxhash-wasm: 1.1.0 yargs-parser: 21.1.1 - zod: 3.23.8 - zod-to-json-schema: 3.23.5(zod@3.23.8) - zod-to-ts: 1.2.0(typescript@5.7.2)(zod@3.23.8) + zod: 3.24.1 + zod-to-json-schema: 3.23.5(zod@3.24.1) + zod-to-ts: 1.2.0(typescript@5.7.2)(zod@3.24.1) optionalDependencies: sharp: 0.33.5 transitivePeerDependencies: @@ -3425,8 +3425,8 @@ snapshots: browserslist@4.24.2: dependencies: caniuse-lite: 1.0.30001687 - electron-to-chromium: 1.5.71 - node-releases: 2.0.18 + electron-to-chromium: 1.5.72 + node-releases: 2.0.19 update-browserslist-db: 1.1.1(browserslist@4.24.2) buffer-from@1.1.2: @@ -3538,7 +3538,7 @@ snapshots: dset@3.1.4: {} - electron-to-chromium@1.5.71: {} + electron-to-chromium@1.5.72: {} emmet@2.4.11: dependencies: @@ -3976,7 +3976,7 @@ snapshots: dependencies: argparse: 2.0.1 - jsesc@3.0.2: {} + jsesc@3.1.0: {} json-schema-traverse@1.0.0: {} @@ -4020,7 +4020,7 @@ snapshots: dependencies: yallist: 3.1.1 - magic-string@0.30.14: + magic-string@0.30.15: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -4518,7 +4518,7 @@ snapshots: node-addon-api@7.1.1: optional: true - node-releases@2.0.18: {} + node-releases@2.0.19: {} nth-check@2.1.1: dependencies: @@ -4935,13 +4935,13 @@ snapshots: '@img/sharp-win32-ia32': 0.33.5 '@img/sharp-win32-x64': 0.33.5 - shiki@1.24.1: + shiki@1.24.2: dependencies: - '@shikijs/core': 1.24.1 - '@shikijs/engine-javascript': 1.24.1 - '@shikijs/engine-oniguruma': 1.24.1 - '@shikijs/types': 1.24.1 - '@shikijs/vscode-textmate': 9.3.0 + '@shikijs/core': 1.24.2 + '@shikijs/engine-javascript': 1.24.2 + '@shikijs/engine-oniguruma': 1.24.2 + '@shikijs/types': 1.24.2 + '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 signal-exit@4.1.0: {} @@ -5329,15 +5329,15 @@ snapshots: yocto-queue@1.1.1: {} - zod-to-json-schema@3.23.5(zod@3.23.8): + zod-to-json-schema@3.23.5(zod@3.24.1): dependencies: - zod: 3.23.8 + zod: 3.24.1 - zod-to-ts@1.2.0(typescript@5.7.2)(zod@3.23.8): + zod-to-ts@1.2.0(typescript@5.7.2)(zod@3.24.1): dependencies: typescript: 5.7.2 - zod: 3.23.8 + zod: 3.24.1 - zod@3.23.8: {} + zod@3.24.1: {} zwitch@2.0.4: {} diff --git a/metadata/en-US/changelogs/124.txt b/metadata/en-US/changelogs/124.txt index 9ad82c6bf8fd..53662345fdc0 100644 --- a/metadata/en-US/changelogs/124.txt +++ b/metadata/en-US/changelogs/124.txt @@ -8,6 +8,7 @@ * Fix export on web * Fix shape detection always enabled in pen tool * Fix ruler not working correctly in pen tool +* Fix ruler position is wrong when moving on the canvas * Fix zoom dependent not working correctly with the label tool ([#765](https://github.com/LinwoodDev/Butterfly/issues/765)) Read more here: https://linwood.dev/butterfly/2.2.3-rc.1 \ No newline at end of file