Bartłomiej Dach
19f892687a
Add precise rotation control to osu! editor
2023-08-16 11:37:52 +02:00
Bartłomiej Dach
ebe5dd2ac9
Interface with SelectionRotationHandler
via DI rather than explicit passing
2023-07-30 20:21:41 +02:00
Bartłomiej Dach
262f25dce8
Make SelectionRotationHandler
a Component
2023-07-30 20:18:33 +02:00
Bartłomiej Dach
821cd08f34
Merge branch 'master' into selection-operations-refactor
2023-07-30 19:29:06 +02:00
Bartłomiej Dach
c6f0cf50ca
Use better safety in rectangular grid
...
- Checking `DrawSize != Vector2.Zero` is too specific. It could also
crash on zero-height-but-non-zero-width, or
zero-width-but-non-zero-height.
- Take the `gridCache.Validate()` call out of the zero checks, because
even if the width or height are zero, not generating anything is valid
and there is no reason to validate every frame until `gridCache` gets
invalidated again.
2023-07-28 22:57:02 +02:00
Dean Herbert
0e4db9b439
Add safety in RectangularPositionSnapGrid
that size is greater than zero
...
Would crash otherwise
2023-07-28 16:25:40 +09:00
Dean Herbert
7fd6bb9d5f
Fix a couple of code style issues in SelectionBox
2023-07-26 14:04:38 +09:00
Dean Herbert
39c2bb240b
Apply NRT to SelectionBoxRotationHandle
.
2023-07-26 14:04:21 +09:00
Dean Herbert
eac6271bd0
Add new property to avoid overlapping usages
2023-07-25 18:14:03 +09:00
Bartłomiej Dach
a201152b04
Add xmldoc to SelectionRotationHandler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
aec3ca250c
Migrate SelectionHandler
to use SelectionRotationHandler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
ba8ebefb50
Add basic structure for new rotation handler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
4622255cc7
Move out helper methods to static class
2023-07-23 18:24:20 +02:00
Dean Herbert
cdcb10e0e7
Fix timeline centre point being ever-so-slight off
2023-07-21 15:26:41 +09:00
Dean Herbert
f489dbd7a9
Reduce width of right toolbar ever so slightly (and use more shared constants)
2023-07-21 14:39:15 +09:00
Dean Herbert
ca3d1538ae
Merge branch 'master' into editor-metrics
2023-07-21 14:26:32 +09:00
Bartłomiej Dach
07e0a703d7
Adjust inline comment
2023-07-20 20:51:39 +02:00
Bartłomiej Dach
708dd355cd
Merge branch 'master' into editor-cyclic-selection
2023-07-20 20:19:46 +02:00
Bartłomiej Dach
511948ba56
Add xmldoc to ApplySelectionOrder()
2023-07-20 19:16:04 +02:00
Dean Herbert
cf3949c9e2
Fix double-click handling when cyclic selection is enabled
...
Removes the limitations of cyclic selection as a result.
2023-07-19 17:21:20 +09:00
Dean Herbert
5ade093c5a
Change editor to always perform selection of closest object
2023-07-19 16:56:16 +09:00
Dean Herbert
57abb15724
Update design of timeline centre marker and adjust surrounding paddings
2023-07-14 16:37:57 +09:00
Dean Herbert
00e9746174
Implement longer design for timing point piece
2023-07-14 16:37:56 +09:00
Dean Herbert
01750dd091
Update metrics of checkboxes and backgrounds to match design better
2023-07-14 14:29:02 +09:00
Dean Herbert
5b2e704264
Move beat divisor control inside of TimelineArea
and adjust metrics to match design
2023-07-14 14:19:04 +09:00
Dean Herbert
ebaf63b764
Apply NRT to timeline related classes
2023-07-14 14:04:12 +09:00
Dean Herbert
56acc9e3dd
Change BeatDivisorControl
to retrive bindable divisor via DI
2023-07-14 14:03:25 +09:00
Bartłomiej Dach
9eec1337b3
Use slightly different condition for better UX
2023-07-01 21:39:08 +02:00
Bartłomiej Dach
183777f8df
Fix edge cases where selection buttons go outside playfield bounds
...
Addresses
https://github.com/ppy/osu/discussions/23599#discussioncomment-6300885 .
2023-07-01 21:27:17 +02:00
Bartłomiej Dach
e4e08c0f5f
Fix selection handlers eating hotkey presses they didn't handle
2023-06-28 20:48:22 +02:00
Dean Herbert
29376ffcc0
Trigger state change when flipping via hotkey in the editor
...
This will trigger a change even if nothing happens. But I think that's
okay (not easy to avoid) because the change handler should be aware that
nothing changed, if anything.
Closes https://github.com/ppy/osu/issues/24065 .
2023-06-28 13:52:51 +09:00
Bartłomiej Dach
9be2d9d62e
Fix hotkey presses generating unnecessary undo history
...
The buttons don't check whether the operation they correspond to is
possible to perform in the current state of the selection box, so not
checking `Can{Reverse,Rotate}` causes superfluous undo states to be
added without any real changes if an attempt is made to reverse or
rotate a selection that cannot be reversed or rotated.
2023-06-27 22:25:04 +02:00
Bartłomiej Dach
17ed45d07c
Mention hotkeys in button tooltips
2023-06-27 22:04:15 +02:00
Bartłomiej Dach
54280f06be
Switch to == true
2023-06-27 22:02:15 +02:00
Bartłomiej Dach
ad3a470eaf
Enable NRT in SelectionBox
2023-06-27 22:01:44 +02:00
Dean Herbert
c6d952abe3
Add support for Ctrl
+ <
/ >
to rotate selection in editor
...
As discussed in https://github.com/ppy/osu/discussions/24048 .
2023-06-27 17:01:41 +09:00
Dean Herbert
7ddbf4eaa7
Add a visual effect when keyboard shortcuts are used to trigger selection box buttons
2023-06-27 17:01:13 +09:00
Dean Herbert
df5b389629
Manual fixes to reduce warnings to zero
2023-06-24 01:52:53 +09:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Dean Herbert
84fc6e92db
Fix slightly incorrect calculations
2023-06-19 20:23:46 +09:00
Dean Herbert
4314f9f46a
Merge branch 'master' into fix-distance-snap-grid-centering
2023-06-19 20:22:09 +09:00
Bartłomiej Dach
28696f595f
Privatise setter
2023-06-16 16:24:07 +02:00
Dean Herbert
d965d39c44
Fix distance snap grid circles not correctly being centered on snap point
2023-06-16 17:21:32 +09:00
Dean Herbert
36954e55ad
Fix incorrect mapping when distance spacing is not 1.0x
2023-06-16 17:15:45 +09:00
Dean Herbert
78b2e6f3df
Add setting to limit distance snapping to current time
...
As discussed in https://github.com/ppy/osu/discussions/23815#discussioncomment-6124116 .
2023-06-09 15:54:33 +09:00
Bartłomiej Dach
4b3b22f046
Merge branch 'master' into beat-divisor-better-defaults
2023-06-08 20:35:03 +02:00
Bartłomiej Dach
3c8f387a6c
Remove unused method
2023-06-07 23:38:06 +02:00
Bartłomiej Dach
d9281ac8c7
Remove unused virtual
spec
2023-06-07 23:38:06 +02:00
Dean Herbert
3a01498789
Use existing next/previous methods (and remove looping behaviour)
2023-06-08 01:01:29 +09:00
Dean Herbert
2c89af608a
Add ability to cycle beat snap divisor using hotkeys
...
Defaults to Ctrl+Shift+Wheel (as per stable).
Closes #23785 .
2023-06-07 17:15:15 +09:00