GraphiteEditor / GraphiteEditor/Graphite
Tracking Issue: Improve the NumberInput widget UX
- Ngôn ngữ chính
- Rust
- Star
- 27.2k
- Fork
- 1.3k
- Merge trung bình
- 20 giờ 5 phút
- Pull request đã merge (30 ngày)
- 57
Mô tả
The NumberInput widget should support more common ways of modifying numerical widgets, namely:
- [x] Dragging left/right to adjust the value (#1468)
- [x] When dragging, Shift slows it down by adjusting the next order of magnitude of less precision and Ctrl snaps to increments of the current order of magnitude of precision (#1468)
- [x] When dragging, Escape and right click abort the change (#1468)
- [x] Add an integrated label to be shown on the left side, with the value on the right side, instead of the default value-centered display
- [x] #1471
- [x] Holding down the mouse button on the arrow to change it multiple times; this should probably work like key repeat, with an initial delay and a constant rate of repetition (#2276)
- [ ] While editing the number field, Up/Down arrows should increment/decrement by 1 and Shift+Up/Down by 10
- [ ] Hover mouse over it to copy and paste value
- [ ] Hover mouse over and hit Backspace to reset the value to its default
- [ ] Hover mouse over and hit - to negate the current value
- [ ] Hover mouse over it and hit Enter key to start editing (like clicking)
- [ ] Hover mouse over it and hit / to set the value to its reciprocal
- [ ] Hover mouse over it and Ctrl+scroll wheel to increment/decrement the value
- [ ] Detect and clean up floating point imprecision with numbers like `123.450000000000003` or `0.9999999999997` using a heuristic to convert those to `123.45` and `1.0`.
- [ ] Precision issues with values greater than JS's `Number.MAX_SAFE_INTEGER` (`9007199254740991`) which is still less than Rust's `u64`. Typing certain values like `9007199254740995` and `9007199254740997` both get turned into nearby values like `9007199254740995` for some but not all values. This means we need to use `bigint` more consistently throughout the entire pipeline in the frontend.
- [ ] Unit conversions in the input boxes, blocked on #586
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Đánh giá
Issue này chưa được đánh giá.