GraphiteEditor / GraphiteEditor/Graphite

Robustness when panning/tilting/zooming during dragging actions

Ouverte
#3,500 0 commentaires 1 réaction 0 personnes assignées Voir sur GitHub
Good First Issue Paper Cut
Langage dominant
Rust
Étoiles
27.2k
Forks
1.3k
Merge moyen
20 h 5 min
PR mergées (30 j)
57

Description

The user can PTZ...
- Pan (middle mouse drag, or scroll using the scroll wheel)
- Tilt (Alt middle mouse drag)
- Zoom (Ctrl middle mouse drag, or Ctrl scroll with the scroll wheel)
...while performing various dragging operations and those currently don't follow the original document-space start position coordinates:

- [ ] Drag offset (Select tool):

https://github.com/user-attachments/assets/87e63c93-cff5-40e1-a058-75e4461c1e02

- [ ] Selection box (Select tool and Path tool):

https://github.com/user-attachments/assets/20ad0109-e828-4493-a04e-13d97ed8d635

- [ ] Grab transformation (G with an object selected using the Select tool or points selected using the Path tool):

https://github.com/user-attachments/assets/e4699542-8589-419a-889f-5185fe71c62a

https://github.com/user-attachments/assets/93e193c3-e53e-47ee-95f1-ac4745d3fe05

- [ ] Point rotate transformation when tilted (R with points selected using the Path tool):

https://github.com/user-attachments/assets/bd0fe282-395e-4d1b-87d0-51964413a928

- [ ] Scale transformation when tilted (S with an object selected using the Select tool or points selected using the Path tool):

https://github.com/user-attachments/assets/2186ce09-d487-40b5-9e76-71a5f5be981c

https://github.com/user-attachments/assets/7be92f8c-8460-4360-9507-80f4b97237f6

- [ ] Grab transformation when tilted G with an object selected using the Select tool or points selected using the Path tool):

https://github.com/user-attachments/assets/df0f672d-acf5-45e0-8d72-5d27e36937b7

https://github.com/user-attachments/assets/bea3ab95-a230-4b83-8e17-05183ac7f2d6

- [ ] Duplication incorrectly still occurs when Alt middle mouse dragging to tilt the viewport while dragging (once tilting begins, duplication should be canceled):

https://github.com/user-attachments/assets/8d73573d-2552-4cdb-a9f3-f5adb200a926

- [ ] The gray original path ghost outline stays frozen in place under PTZ

https://github.com/user-attachments/assets/f404f74e-af35-47a1-8981-98c1ff1b0baa

- [ ] Transform dial dragging along axis when tilted:

https://github.com/user-attachments/assets/696d6f85-406c-4e71-b603-d88d9586634f

- [ ] Transform dial dragging along axis when panning:

https://github.com/user-attachments/assets/dce212b2-c4b2-4913-a28e-b85ac6626094

- [ ] Transform dial dragging along axis when zooming makes the axis line disappear:

https://github.com/user-attachments/assets/fc8f7cb7-05ef-4a81-bf16-d9cc9b3c3a46

- [ ] Transformation by dragging while holding Shift to lock axes, those axes need to tilt with the canvas:

https://github.com/user-attachments/assets/5ee6dbfb-65a7-476f-87a4-dddc5ab91bdb

- [ ] Transformation by dragging while holding Shift to lock axes, those axes need to pan with the canvas:

https://github.com/user-attachments/assets/3d7ecf31-d90f-4485-84d5-99a1b744042f

- [ ] Transform cage corner rotation while panning, tilting, and zooming:

https://github.com/user-attachments/assets/f941dd0c-478a-4484-9c2e-41363b591dcb

https://github.com/user-attachments/assets/efe907d6-57a9-4d54-a9dd-e76ec927f668

https://github.com/user-attachments/assets/4a8da8eb-0879-46c3-b276-cfaaf1e895d7

- [ ] Transform cage edge scaling while panning, tilting, and zooming:

https://github.com/user-attachments/assets/4c99266e-210d-46f7-83b4-53f661204e86

There may be more I haven't found yet. While solving this issue, you should hopefully become good at finding even more similar cases. This should be solved across multiple PRs each based around several of the related issues shown above, not all in a single PR but also not extremely spread out with one PR per video, since both extremes would make these fixes inconvenient to review.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Start by reproducing the listed PTZ interactions while dragging with the Select and Path tools, including grab, rotate, scale, transform cage, and transform dial operations. Compare each result with the original document-space start position and check the listed duplication and ghost-outline cases. Done means the identified dragging operations remain aligned during panning, tilting, and zooming, with the listed inconsistencies resolved across reviewable groups.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
rust
Domaine
computer-graphics
Type d'issue
Bug
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.