bug: Inflationary use of "Undo"-Steps for colors and numeric values
pr0pz opened this issue · 0 comments
Steps To Reproduce
- Start self hosted version with docker compose
- Open or start a project
For colors:
3. Upload an image
4. Start the color picker tool with "i"
5. Click and hold mouse button (like for drag and drop) and slide the mouse pointer through different colors, then release the mouse button
For numeric values:
3. Create a text element
4. Go to font-size: hold shift + arrow up/down key to change the font size (like ten times up, 2times down)
Expected behavior
When holding shift or the mouse button, I expect the final result to be one UNDO step, because I'm playing around with the values and haven't decided yet.
Actual behavior
Every step along the way is saved as UNDO, which kinda inflates/bloats the undo/redo function. I have to click ctrl + z a zillion times to bet back to the original value.
- When I hold the mouse down: all kind of colors are saved into undo (and also recent colors - see video).
- Same goes for numeric values: While playing around with the values holding shift, every value along the way is saved into undo, not just the one where I stopped.
These are two examples while I'm playing around (holding mouse down or shift) with some values as designer and just expect to hit "ctrl + z" once to go back to the original value.
Screenshots or video
penpot-undo_colors.mp4
Desktop (please complete the following information)
- OS: macos sonoma 14.4.1
- Browser: Arc 1.39.1
Smartphone (please complete the following information)
No response
Environment (please complete the following information)
Self-Hosted:
- OS: macos sonoma 14.4.1
- Docker Desktop: 4.28.0 (139021)
- Compose: v2.24.6-desktop.1
docker-compose.yaml
---
version: "3.5"
networks:
penpot:
volumes:
penpot_postgres_v15:
penpot_assets:
services:
penpot-frontend:
image: "penpotapp/frontend:latest"
restart: always
ports:
- 9001:80
volumes:
- penpot_assets:/opt/data/assets
depends_on:
- penpot-backend
- penpot-exporter
networks:
- penpot
labels:
- "traefik.enable=true"
environment:
- PENPOT_FLAGS=enable-registration enable-login-with-password
penpot-backend:
image: "penpotapp/backend:latest"
restart: always
volumes:
- penpot_assets:/opt/data/assets
depends_on:
- penpot-postgres
- penpot-redis
networks:
- penpot
environment:
- PENPOT_FLAGS=enable-registration enable-login-with-password disable-email-verification enable-smtp enable-prepl-server
- PENPOT_PUBLIC_URI=http://localhost:9001
- PENPOT_DATABASE_URI=postgresql://penpot-postgres/penpot
- PENPOT_DATABASE_USERNAME=penpot
- PENPOT_DATABASE_PASSWORD=penpot
- PENPOT_REDIS_URI=redis://penpot-redis/0
- PENPOT_ASSETS_STORAGE_BACKEND=assets-fs
- PENPOT_STORAGE_ASSETS_FS_DIRECTORY=/opt/data/assets
- PENPOT_TELEMETRY_ENABLED=true
- PENPOT_SMTP_DEFAULT_FROM=no-reply@example.com
- PENPOT_SMTP_DEFAULT_REPLY_TO=no-reply@example.com
- PENPOT_SMTP_HOST=penpot-mailcatch
- PENPOT_SMTP_PORT=1025
- PENPOT_SMTP_USERNAME=
- PENPOT_SMTP_PASSWORD=
- PENPOT_SMTP_TLS=false
- PENPOT_SMTP_SSL=false
penpot-exporter:
image: "penpotapp/exporter:latest"
restart: always
networks:
- penpot
environment:
- PENPOT_PUBLIC_URI=http://penpot-frontend
- PENPOT_REDIS_URI=redis://penpot-redis/0
penpot-postgres:
image: "postgres:15"
restart: always
stop_signal: SIGINT
volumes:
- penpot_postgres_v15:/var/lib/postgresql/data
networks:
- penpot
environment:
- POSTGRES_INITDB_ARGS=--data-checksums
- POSTGRES_DB=penpot
- POSTGRES_USER=penpot
- POSTGRES_PASSWORD=penpot
penpot-redis:
image: redis:7
restart: always
networks:
- penpot
penpot-mailcatch:
image: sj26/mailcatcher:latest
restart: always
expose:
- '1025'
ports:
- "1080:1080"
networks:
- penpot
Frontend Stack Trace
No response
Backend Stack Trace
No response
Additional context
No response