Andrei Zavatski
614cbdf0a4
Reduce container nesting in PathControlPointPiece
2024-05-18 22:51:58 +03:00
OliBomby
8df5f22b4e
Merge remote-tracking branch 'upstream/master' into scaling
2024-05-15 23:05:19 +02:00
Dan Balasescu
3b8b56cbcb
Apply required changes after framework masking updates
2024-05-09 20:18:53 +09:00
Andrei Zavatski
e319a3e885
Don't perform masking updates in PathControlPointVisualiser
2024-05-04 22:07:08 +03:00
Andrei Zavatski
cf313cd67f
Use single path to display slider control point connections
2024-05-04 21:53:48 +03:00
Bartłomiej Dach
94275f148e
Fix adding slider control points via context menu not undoing correctly
...
Closes https://github.com/ppy/osu/issues/27985 .
2024-04-25 09:01:47 +02:00
Dean Herbert
94cbe1838f
Replace usages of is null
with == null
2024-04-03 01:50:39 +08:00
Dean Herbert
51e9348d27
Merge pull request #26702 from honguyenminh/fix-rotate-editor-button-disabled
...
Fix rotate tool button in editor disabled when selecting 1 circle
2024-04-02 14:31:43 +08:00
Nguyên Minh Hồ
6642702fa9
Update plurals in editor rotate button tooltip
...
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2024-04-02 12:36:44 +07:00
Dean Herbert
eca242c1c7
Change tooltip text slightly
2024-04-02 13:17:16 +08:00
Dean Herbert
ed5dd5c8cd
Bind using local bindables to avoid potentially event pollution
2024-04-02 13:04:34 +08:00
Dan Balasescu
099ad22a92
Use local bindable instead
...
Binding events directly to an external bindable will cause that
bindable to hold a permanent reference to the current object.
We use `GetBoundCopy()` or otherwise a local bindable + `.BindTo()` to create a
weak-referenced copy of the target bindable. When the local bindable's
lifetime expires, so does the external bindable's reference to it.
2024-04-01 15:31:35 +09:00
Nguyên Minh Hồ
1adba68357
Merge branch 'fix-rotate-editor-button-disabled' of https://github.com/honguyenminh/osu into fix-rotate-editor-button-disabled
2024-03-31 16:00:58 +07:00
Nguyên Minh Hồ
86def7e263
Change editor rotate button disabled tooltip text
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-03-31 16:00:47 +07:00
Arthur Araujo
450e7016bc
Bind StackHeight
changes to visual update methods
2024-03-30 21:23:05 -03:00
Nguyên Minh Hồ
b445e27ad6
Aggregate two CanRotate bindable for enabling the Rotate button
2024-03-30 17:54:27 +07:00
Nguyên Minh Hồ
6f782266b5
Fix inspection
2024-03-30 17:28:57 +07:00
Nguyên Minh Hồ
5d497ba4a8
Simplify TooltipText for EditorRadioButton
2024-03-30 16:04:22 +07:00
Nguyên Minh Hồ
8d6358a138
Fix editor rotation allowing spinner only bug
2024-03-30 16:02:31 +07:00
Nguyên Minh Hồ
9950395e5f
Merge branch 'fix-rotate-editor-button-disabled' of https://github.com/honguyenminh/osu into fix-rotate-editor-button-disabled
2024-03-30 13:57:44 +07:00
Nguyên Minh Hồ
113dbcd10f
Merge branch 'master' into fix-rotate-editor-button-disabled
2024-03-30 13:56:31 +07:00
Bartłomiej Dach
21201e616d
Merge pull request #27723 from 64ArthurAraujo/editor-fix-reverse-selection
...
Fix reverse selection not updating new combo location
2024-03-28 11:25:17 +01:00
Bartłomiej Dach
2f786ffc32
Simplify implementation
2024-03-28 10:12:27 +01:00
Arthur Araujo
01a72d5afa
Fix combo not reversing properly depending on the order of selection
2024-03-26 12:10:40 -03:00
Bartłomiej Dach
1866b4b6b1
Refactor abstract check to reduce duplication
2024-03-26 11:13:03 +01:00
Bartłomiej Dach
9b923b1909
Fix code quality issues
2024-03-26 10:55:49 +01:00
Arthur Araujo
10683de578
Use order of new combo flags instead of StartTime
2024-03-26 04:59:47 -03:00
Arthur Araujo
78037fa477
Handle new combo on HandleReverse
2024-03-25 04:19:14 -03:00
Arthur Araujo
6fa663c8ca
Make check ruleset specific
2024-03-22 14:48:22 -03:00
Dean Herbert
fc05268fc3
Apply NRT to DrawableOsuEditorRuleset
too
2024-03-11 14:45:52 +08:00
Berkan Diler
a891303484
Use ArgumentOutOfRangeException throw helper methods
2024-03-05 10:20:30 +01:00
Andrei Zavatski
3791ab30c4
Reduce allocations in HitCircleOverlapMarker
2024-02-19 20:55:43 +03:00
Andrei Zavatski
29900353d9
Reduce allocations in SliderSelectionBlueprint
2024-02-19 20:26:15 +03:00
kongehund
0da67e64b3
Fix deselecting slider adding control points
2024-02-06 00:28:39 +01:00
Nguyên Minh Hồ
d5b70ed09a
Move CanRotatePlayfieldOrigin bindable to generic rotation handler
2024-01-25 16:58:44 +07:00
Nguyên Minh Hồ
2fa52de87a
Fix formatting
2024-01-25 16:29:44 +07:00
Nguyên Minh Hồ
94ada87cba
Un-hardcode tooltip from EditorRadioButton and add disabled tooltip for rotation popover
2024-01-25 14:32:48 +07:00
Nguyên Minh Hồ
500bed0121
Split editor toolbox radio button disabling logic from EditorRadioButton, then add disabling logic for rotate popover
2024-01-25 14:24:35 +07:00
Nguyên Minh Hồ
601ba9f194
Change rotate tool button to be enabled on single circle.
...
Inject osu ruleset specific rotate handler instead of generic handler.
2024-01-25 12:16:35 +07:00
Nguyên Minh Hồ
e1f8bc9692
Rename CanRotate property of SelectionRotationHandler to a more descriptive name
2024-01-25 12:10:50 +07:00
OliBomby
9b9485f656
fix adjust axes detection
2024-01-20 15:39:38 +01:00
OliBomby
1596776a81
fix imports
2024-01-20 15:15:49 +01:00
OliBomby
e1f3f7d988
fix possible NaN in clamped scale
2024-01-20 14:49:47 +01:00
OliBomby
a4f771ec08
refactor CanScale properties
2024-01-20 01:13:01 +01:00
OliBomby
26c0d1077a
Refactor scale handling in editor to facilitate reuse
2024-01-20 00:22:53 +01:00
Dean Herbert
2fdbc501c2
Merge pull request #26499 from OliBomby/slider-performance
...
Fix lag when dragging first slider control point in editor
2024-01-16 13:22:49 +09:00
OliBomby
243b7b6fda
fix code quality
2024-01-13 23:17:38 +01:00
OliBomby
83e108071a
fix wrong path type being displayed
2024-01-13 22:51:33 +01:00
OliBomby
39908f5425
remove Validating event and instead call validation explicitly on edits
2024-01-13 22:39:09 +01:00
OliBomby
da4d83f8ca
remove the need for caching points in segment
2024-01-13 21:41:33 +01:00
OliBomby
b4f9878b46
working jank solution
2024-01-13 20:39:49 +01:00
OliBomby
f5d6d52d4c
Move logic for caching segments and updating path types to PathControlPointVisualiser
2024-01-13 14:47:40 +01:00
OliBomby
e1186080b8
simplify scheduling logic
2024-01-13 02:24:33 +01:00
OliBomby
5fa7f6ec53
make drawables that update from path version update once per frame
2024-01-13 02:21:32 +01:00
B3nn1
eea87090fb
Make changeHandler
save changes to PathTypes
2024-01-06 19:25:49 +01:00
OliBomby
460c584dca
fix code quality
2024-01-01 16:21:33 +01:00
OliBomby
f8979cff3a
fix distance
2024-01-01 16:14:20 +01:00
OliBomby
b54c9a36fe
move GridFromPointsClicked handler creation code
2024-01-01 16:12:28 +01:00
OliBomby
98505d0bba
improve grid from points tool code
2024-01-01 16:12:28 +01:00
OliBomby
4e3fe5112d
merge conflict fix
2024-01-01 16:09:18 +01:00
OliBomby
7a0535a2eb
add right click for abort
2024-01-01 15:59:29 +01:00
OliBomby
c952e2f620
deselect stuff stuff when grid from points
2024-01-01 15:59:29 +01:00
OliBomby
c2ea1848ca
fix period
2024-01-01 15:59:29 +01:00
OliBomby
fea0ceb498
improve the grid from points
2024-01-01 15:59:29 +01:00
OliBomby
3495510c7b
kinda working grid from points
2024-01-01 15:58:55 +01:00
OliBomby
09852bc46b
fix horizontal vs vertical flips being mixed up when rotation angle is too big
2024-01-01 15:51:55 +01:00
OliBomby
078fe5a78c
Rotate popover rotates around grid center
2024-01-01 15:51:55 +01:00
OliBomby
e803b0215f
flip along grid axis
2024-01-01 15:51:55 +01:00
OliBomby
6bb72a9fcc
Revert "Remove other grid types"
...
This reverts commit de14da95fa
.
2024-01-01 15:46:07 +01:00
OliBomby
de14da95fa
Remove other grid types
2024-01-01 15:44:20 +01:00
OliBomby
39f4a1aa8e
conflict fixes
2024-01-01 15:34:05 +01:00
OliBomby
594b6fe167
Add back the old keybind for cycling grid spacing
2024-01-01 15:27:51 +01:00
OliBomby
20e338b892
also hide grid from points button when not hovered
2024-01-01 15:24:32 +01:00
OliBomby
33e559f835
add integer keyboard step to sliders
2024-01-01 15:22:56 +01:00
OliBomby
904ea2e436
move OutlineTriangle code down
2024-01-01 15:22:23 +01:00
OliBomby
e47d570e68
improve UI
2024-01-01 15:21:12 +01:00
OliBomby
493e3a5f7a
use G to change grid type
2024-01-01 15:19:44 +01:00
OliBomby
9a8c41f6ca
Saving exact grid spacing
2024-01-01 15:14:15 +01:00
OliBomby
f649fa106f
Added bindables and binding with BindTo
2024-01-01 15:13:11 +01:00
OliBomby
d0ca3f2b2b
Add circular grid
2024-01-01 15:13:11 +01:00
OliBomby
8a331057b0
Make it actually possible to change grid type
2024-01-01 15:13:10 +01:00
OliBomby
040fd5ef9c
Add option to change grid type
2024-01-01 15:13:10 +01:00
OliBomby
8ef9bdf861
clarify comment
2024-01-01 15:13:10 +01:00
OliBomby
351cfbff3e
Fix snapping going out of bounds
2024-01-01 15:13:10 +01:00
OliBomby
f223487e1c
improve code
2024-01-01 15:13:10 +01:00
OliBomby
b16c232490
add basic control by grid tool box
2024-01-01 15:13:10 +01:00
Bartłomiej Dach
288ac930e4
Use new icons in editor
...
Some that exist on figma are purposefully not used due to an editorial
request from @peppy.
2023-12-27 17:42:18 +01:00
OliBomby
f7cb6b9ed0
Fix all repeat sliders being draggable
2023-12-20 12:58:32 +01:00
OliBomby
66f4dcc578
fix repeat sliders half
2023-12-20 02:32:20 +01:00
OliBomby
1365a1b7be
fix tests
2023-12-20 01:57:11 +01:00
OliBomby
1258a9d378
Find closest distance value to mouse
2023-12-20 01:48:42 +01:00
OliBomby
22a0bc7d9d
Add basic slider distance control
2023-12-20 00:05:32 +01:00
Dean Herbert
c2d3dcdd9c
Fix slider tests and incorrect nullability handling around freehandToolboxGroup
2023-12-13 15:15:49 +09:00
OliBomby
7b49db05d1
Update default parameters to be slightly better
2023-12-07 01:15:42 +01:00
OliBomby
a2ec75d824
Fix illegal circle arc with center out of polygon
2023-12-07 00:57:29 +01:00
OliBomby
89859b85b7
add controllable leniency
2023-12-07 00:43:34 +01:00
OliBomby
1930476192
Add circle arc segments
2023-12-07 00:26:13 +01:00
OliBomby
22287f3a7f
decrease max tolerance
2023-12-06 16:36:24 +01:00
OliBomby
a8f3a0533a
Use 4th order BSpline by default
2023-12-06 16:35:59 +01:00
OliBomby
060141866c
Update SliderPlacementBlueprint.cs
2023-12-03 22:06:07 +01:00
OliBomby
b3d1a9ee2e
Dont snap expected distance while drawing
...
This makes it 10 billion times smoother to draw, very nice
2023-12-03 22:03:51 +01:00
OliBomby
ca55a7b2bf
call builder finish before ending curve
2023-12-03 21:43:37 +01:00
OliBomby
bcf2effae9
Remove the Linear segment simplification because it just makes things harder to edit afterwards if it made some segment linear type when you actually intended there to be some curve
2023-12-03 21:22:04 +01:00
OliBomby
34b5264616
fix the linear segment
2023-12-03 21:13:27 +01:00
OliBomby
ba2cc0243c
update comment
2023-12-03 21:10:01 +01:00
OliBomby
8873824107
fix control points being cleared
2023-12-03 20:53:25 +01:00
OliBomby
4cd6efc8f7
update default parameters
2023-12-03 20:53:05 +01:00
OliBomby
595bc9398a
update to new builder control point signature
2023-12-03 20:14:00 +01:00
Bartłomiej Dach
63481e8e60
Merge pull request #25539 from default0/fix-slider-drawing-with-snap
...
Fix freehand-drawn sliders with distance snap
2023-11-27 11:25:50 +09:00
Bartłomiej Dach
3da8a0cbed
Fix undo being broken when ctrl-click and dragging new point
2023-11-23 14:01:17 +09:00
Bartłomiej Dach
e8d3d26d16
Fix slider length not updating when adding new anchor via ctrl-click
2023-11-23 10:07:40 +09:00
cs
95b12082ae
Update to respect distance snap
...
This will cause freehand drawing to respect distance snap, instead
changing the drawn path to start from the sliders start position
and "snap" in a linear fashion to the cursor position from the
position indicated by distance snap
2023-11-22 10:14:44 +01:00
cs
f7fce1d714
Fix freehand-drawn sliders with distance snap
2023-11-22 09:55:32 +01:00
Dean Herbert
21bf288277
Merge pull request #25520 from peppy/context-menu-spacers
...
Allow context menus to have visible spacers
2023-11-21 16:56:36 +09:00
Bartłomiej Dach
bf972a04ee
Merge pull request #25409 from Tom94/bspline-sliders
...
Add free-hand drawing of sliders to the editor
2023-11-21 16:28:14 +09:00
Bartłomiej Dach
ed38746823
Fix spacer appearing on top of menu
2023-11-21 16:14:41 +09:00
Bartłomiej Dach
d83b2e24e7
Merge pull request #25371 from RatinFX/open-editor-timestamp
...
Implement opening editor timestamp links
2023-11-21 15:48:36 +09:00
Dean Herbert
cc33e12125
Fix dragging after one point already placed incorrectly entering drawing mode
2023-11-21 15:38:12 +09:00
Dean Herbert
a210469956
Reorder methods
2023-11-21 15:38:12 +09:00
Dean Herbert
016de7be6a
Simplify drag handling code in SliderPlacementBlueprint
2023-11-21 15:38:12 +09:00
Dean Herbert
cf6f66b84f
Remove redundant Clear()
call
2023-11-21 15:38:12 +09:00
Dean Herbert
92728ea564
Simplify toolbox initialisation
2023-11-21 15:38:12 +09:00
Dean Herbert
e69e78ad41
Refactor b-spline path conversion code to better handle linear segments
2023-11-21 15:38:12 +09:00
Dean Herbert
0a5444d091
Fix using the incorrect position for the first point
2023-11-21 15:38:12 +09:00
Dean Herbert
314a7bf6f1
Simplify AddOnce
call to avoid self
argument
2023-11-21 15:38:12 +09:00
Dean Herbert
9718a80249
Add visible spacer between "inherit" and other curve types
2023-11-21 14:24:19 +09:00
Dean Herbert
3680024e31
Fix tolerance not being transferred to blueprint in all cases
2023-11-21 11:15:00 +09:00
Dean Herbert
e9f371a581
Refactor slider settings class
2023-11-21 09:59:49 +09:00
Dean Herbert
638c8f1adc
Get rid of weird cruft and non-standard flow
2023-11-21 00:25:23 +09:00
Dean Herbert
6f5c468a83
Rename settings class
2023-11-21 00:21:44 +09:00
Dean Herbert
750bbc8a19
Simplify null checks
2023-11-21 00:18:36 +09:00
Bartłomiej Dach
364a3f75e1
Compile regexes
2023-11-20 22:03:25 +09:00
Bartłomiej Dach
b6215b2809
Rename and document SelectFromTimestamp
2023-11-20 21:57:14 +09:00
Dean Herbert
492fd06c62
Remove unnecessary null override
2023-11-20 19:21:23 +09:00
Bartłomiej Dach
4061417ac8
Decrease default value for slider tolerance
...
Highly subjective change, but at 50 the drawing just did not feel
responsive enough to input.
2023-11-20 15:54:46 +09:00
Bartłomiej Dach
43dbd65708
Show Catmull as a control point type option if selection already contains it
2023-11-20 15:53:25 +09:00
Bartłomiej Dach
5d1bac6d7a
Remove IToolboxAttachment
for now
...
The interface doesn't really do anything useful right now because
it enforces a common contract, but all usages of the contract
go through the concrete implementation, and it inflates
the already-huge diff.
2023-11-20 13:17:43 +09:00
Bartłomiej Dach
affef85f25
Remove ISliderDrawingSettingsProvider
...
Seems like excessive abstraction.
2023-11-20 13:02:51 +09:00
Bartłomiej Dach
831884a64b
Remove unused enum member
2023-11-20 13:00:12 +09:00
Bartłomiej Dach
f46945a294
Avoid one unnecessary path update from B-spline builder
2023-11-20 12:42:16 +09:00
Bartłomiej Dach
518dcc567b
Null-check drawingSettingsProvider
...
As it's annotated as an optional dependency.
2023-11-20 12:41:24 +09:00
Bartłomiej Dach
b6e3e42445
Merge branch 'master' into bspline-sliders
2023-11-20 12:03:29 +09:00
cs
360864fd7b
Hide catmull curve type when possible
2023-11-15 07:45:28 +01:00
cs
520642975b
Fix control point hover text and context menu
2023-11-15 07:45:09 +01:00
cs
ceeaf5b67c
CI fixes and small tweaks
2023-11-15 07:09:33 +01:00
Thomas Müller-Höhne
90ec6895d1
Automatic red control point generation & corner threshold
2023-11-14 16:53:01 +09:00
cs
fa976a5aa0
Fix code style/quality issues
2023-11-13 08:25:27 +01:00
Thomas Müller-Höhne
e6b4dfba36
Fix doubled control point at beginning of drawn slider
2023-11-13 12:49:59 +09:00
Thomas Müller-Höhne
c24b3543ab
Fix OnDragStart on macOS
2023-11-13 12:47:12 +09:00
ratinfx
fab6fc9adb
Updated comments, renamed method
2023-11-12 15:09:15 +01:00
ratinfx
4e7c40f1d7
Do Split and Parse before checking HitObjects
2023-11-12 14:58:46 +01:00
cs
54b8244a18
CI Fixup
2023-11-11 15:02:06 +01:00
ratinfx
4e1e19728c
Refactor HitObject selection in Composer
2023-11-11 14:02:42 +01:00
cs
3f85aa79c5
Add free-hand drawing of sliders to the editor
2023-11-11 13:33:25 +01:00
Thomas Müller-Höhne
926636cc03
Generalize Bezier curves to BSplines of Nth degree
2023-11-11 13:32:53 +01:00
Dean Herbert
35e11c7c63
Rename diagonal scale variable and update xmldoc
2023-11-10 17:55:02 +09:00
Dean Herbert
ec3b6e47fb
Change selection handling to adjust Size
instead of Scale
for edge nodes
2023-11-10 14:22:28 +09:00
ratinfx
aa87e0a44d
HitObject Selection logic and separation for gamemodes
...
+ moved time_regex into EditorTimestampParser
2023-11-07 01:36:58 +01:00
Bartłomiej Dach
dcfd6a0a8a
Remove DistancedHitObjectComposer
inheritance from osu! composer
2023-10-19 11:46:30 +02:00
Bartłomiej Dach
3ab083b696
Split IPositionSnapProvider
from IDistanceSnapProvider
...
In preparation to remove `DistancedHitObjectComposer`, split off
`IPositionSnapProvider` from `IDistanceSnapProvider`.
`DistancedHitObjectComposer` was not touching `IPositionSnapProvider`'s
only interface member at all, it was just forwarding it for subclasses
to override to their own leisure.
2023-10-19 11:45:24 +02:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
81485c548c
Move LegacyLastTickOffset
specification to generation code and stop passing everywhere
2023-09-29 14:32:29 +09:00
Dean Herbert
990c54519b
Merge branch 'master' into limit-gameplay-sprite-dimensions
2023-09-26 16:40:32 +09:00
Dean Herbert
41a8239e49
Remvoe null default for mods which can't be null
2023-09-20 15:27:50 +09:00
Dean Herbert
8e16b1d507
Simplify some maximum size specs
2023-09-20 12:48:15 +09:00
Dean Herbert
1a37543d28
Rename SliderVelocity
to SliderVelocityMultiplier
to distinguish from Velocity
2023-09-06 19:01:08 +09:00
Bartłomiej Dach
3c191ff9ea
Expand allowable rotation range to [-360, 360]
2023-08-19 15:09:59 +02:00
Dean Herbert
63080d049f
Adjust icons slightly
2023-08-17 19:08:18 +09:00
Bartłomiej Dach
19f892687a
Add precise rotation control to osu! editor
2023-08-16 11:37:52 +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
Dean Herbert
eac6271bd0
Add new property to avoid overlapping usages
2023-07-25 18:14:03 +09:00
Dean Herbert
2f7d38d98b
Merge branch 'master' into fix-editor-blueprint-input-extension
2023-07-25 18:14:02 +09:00
Bartłomiej Dach
aec3ca250c
Migrate SelectionHandler
to use SelectionRotationHandler
2023-07-23 20:56:22 +02:00
Bartłomiej Dach
ba904fd77b
Migrate osu! rotation handling to SelectionRotationHandler
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
b58354ac64
Fix playfield getting cut off (again) at tall aspect ratios
2023-07-21 15:20:20 +09:00
Dean Herbert
4a6a5b174a
Fix editor blueprints being selectable for too long when hit markers are enabled
...
Addresses https://github.com/ppy/osu/discussions/24163 .
2023-07-19 14:59:22 +09:00
Dean Herbert
dd8774a640
Vertically centre the editor osu! playfield
2023-07-14 13:21:28 +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
95ad18ed2e
Reduce the radius of note-to-note snapping in osu! editor
...
Stable uses `0.15f`, but for whatever reason that feels too large still.
I've ballparked this.
Addresses https://github.com/ppy/osu/discussions/23806 .
2023-06-08 17:44:33 +09:00
Salman Ahmed
62cb6a98ca
Remove redundant nullable suppression directives
2023-06-07 08:20:41 +03:00
Bartłomiej Dach
e35201cb99
Don't snap non-head slider nodes to distance grid during placement either
...
1cd69220ef
only disabled snapping the
aforementioned nodes to distance grid for already-placed sliders.
`SliderPlacementBlueprint` has its own logic for placement, so the fix
needs to be mirrored there too.
2023-05-26 19:51:20 +02:00
Dean Herbert
1cd69220ef
Fix slider path placement snapping non-head nodes to distanced snapping grid
...
As discussed at https://github.com/ppy/osu/discussions/23531 .
2023-05-25 21:41:43 +09:00
Dean Herbert
804671ca74
Split out grid snapping modes into "relative" and "global" types
2023-05-25 21:41:19 +09:00
Dean Herbert
b58ab28765
Make EditorClock
non-nullable in PlacementBlueprint
2023-05-17 21:40:52 +09:00
Dean Herbert
f443cfb93e
Move blueprint validity conditions to allow more correct external usage of EndPlacement
...
Until now, these were haphazardly enforce inline in blueprint
implementations. The only thing stopping complete breakage is that
`EndPlacement` wasn't called (too much) from outside the blueprint,
leaving them responsible for their own placement.
By moving this conditional out of the provided paramters to
`EndPlacement`, it allows more flexible usage of that method externally.
Coming in a future PR.
2023-05-12 16:02:22 +09:00
Dean Herbert
6b017ac05f
Merge pull request #23308 from OliBomby/sample-control-points
...
Remove SampleControlPoint and DifficultyControlPoint from HitObject
2023-05-03 14:21:51 +09:00
Dean Herbert
67f83f246b
Add more padding around playfield in editor to avoid overlap with tool areas
...
Closes #23130 .
2023-05-02 15:37:02 +09:00
OliBomby
c44f71a737
remove all regular usage of DifficultyControlPoint
2023-04-26 17:55:38 +02:00
OliBomby
9f8d7bccba
fix usings
2023-04-26 17:34:02 +02:00
OliBomby
d97daee96b
remove all non-test usage of SampleControlPoint
2023-04-26 13:55:39 +02:00
Dean Herbert
45e3e3623b
Fix spinners being selectable for too long after they fade in the editor
...
The actual visual extension is only applied to `HitCircle`s (which does include slider
start / end), and should not be applied to spinners in the first place.
Addresses https://github.com/ppy/osu/discussions/22949 .
2023-03-28 18:49:59 +09:00
Bartłomiej Dach
49443f0b55
Inline temporary variable
2023-02-04 14:36:30 +01:00
Bartłomiej Dach
a1343dacc1
Merge branch 'master' into SnapToReverseSlider
2023-02-04 14:14:37 +01:00
Wleter
60f6484073
fix spaces
2023-02-03 16:13:37 +01:00
Wleter
f7f13cb9d9
fix formatting
2023-02-03 16:13:04 +01:00
Wleter
20e220df56
prioritize closest snap position
2023-02-03 16:05:16 +01:00
Wleter
23e9bdd554
check every snap position in blueprint
2023-02-02 14:22:30 +01:00
Dean Herbert
7344d34d5b
Move where
class specs to next line
2023-01-26 17:12:41 +09:00
Dean Herbert
13937cf555
Merge branch 'master' into stream-tool-2
2023-01-26 16:08:20 +09:00
Dean Herbert
73f083a316
Refactor how additional points are provided to avoid confusion
2023-01-23 14:13:46 +09:00
Wleter
f8d8a627b8
change property name
2023-01-18 22:00:39 +01:00
Wleter
ab78dd0436
add collection of selection points.
2023-01-18 21:34:23 +01:00
Dean Herbert
ecb4727aec
Fix formatting issues
2023-01-18 17:33:14 +09:00
Wleter
00f15d19f9
fix double newlines
2023-01-17 21:11:21 +01:00
Wleter
e5863fbaf1
add ScreenSpaceEndPoint field
2023-01-10 21:20:09 +01:00
Wleter
38bb7ac0c7
add fields for path's end location
2023-01-10 21:16:34 +01:00
Dean Herbert
192536643c
Fix some more inspections
2022-12-16 20:21:19 +09:00
OliBomby
d458c3a012
Fix variable which didnt get renamed
2022-12-07 10:13:40 +01:00
OliBomby
10b5900710
made PathControlPointVisualiser generic
2022-12-07 10:13:40 +01:00
Dan Balasescu
ee62f3c0d3
Fix test failure
...
Similar to SliderPlacementBlueprint.
2022-12-02 18:32:43 +09:00
Dean Herbert
45ea183cc3
Fix being able to place zero-length spinners
...
Also always snap a spinner's end time using beat snap (matches stable).
2022-12-02 17:57:15 +09:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Dean Herbert
12606122e3
Fix sliders not correctly taking on full available length after changing curve type
2022-11-17 13:59:07 +09:00
Dean Herbert
ada039151b
Add the ability to toggle off hit marker displays in the editor
2022-11-08 18:07:06 +09:00
Dean Herbert
e02c477008
Merge pull request #21017 from andy840119/remove-nullable-disable-in-the-checks
...
Remove nullable disable in the checks.
2022-11-06 18:39:03 +09:00
andy840119
b0673636ca
Remove nullable disable annotation in the osu ruleset.
2022-11-05 16:49:55 +08:00
Bartłomiej Dach
23134aea61
Update outdated comment
2022-11-04 19:48:19 +01:00
Dean Herbert
36c08b69fe
Fix failing tests
2022-11-04 20:47:49 +09:00
Dean Herbert
20021551bb
Fix editor selection behaviour regressions due to new path visualiser optimisation
2022-11-04 19:36:59 +09:00
Dan Balasescu
74f3b9b18d
Merge pull request #20965 from peppy/reduce-slider-blueprint-overhead
...
Only draw path visualiser when hovered or single slider is selected
2022-10-28 16:01:30 +09:00
Dean Herbert
300ffbb500
Don't bother checking for null editorBeatmap
2022-10-28 14:35:55 +09:00
Dean Herbert
10c658e440
Ensure updateVisualDefinition
is called once on load
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-10-28 14:34:24 +09:00
Bartłomiej Dach
d657005ffa
Merge branch 'master' into avoid-unnecessary-path-updates
2022-10-27 20:07:46 +02:00
Dean Herbert
7faf5cd1f6
Fix one more null edge case
2022-10-28 01:20:17 +09:00
Dean Herbert
e582d9d5a8
Remove unused using statements
2022-10-28 01:17:09 +09:00
Dean Herbert
361153f598
Fix nullref in tests due to missing EditorBeatmap
dependency
2022-10-27 19:05:50 +09:00
Dean Herbert
39e0362db1
Reduce size of spinner blueprint to better represent gameplay size
2022-10-27 16:15:22 +09:00
Dean Herbert
0c7672e124
Avoid unnecessarily refreshing SliderBodyPiece
's path
2022-10-27 16:02:04 +09:00
Dean Herbert
2f172b66cf
Block hover if a multi-selection is made to avoid overlapping path visualisers
2022-10-27 14:52:46 +09:00
Dean Herbert
097d310d74
Only draw path visualiser when hovered or single slider is selected
2022-10-27 14:40:14 +09:00
Bartłomiej Dach
4db01fc970
Merge branch 'master' into fix-time-snapping-when-nearby-objects
2022-10-26 23:31:17 +02:00
Bartłomiej Dach
8b8d0c2293
Fix typo in comment
2022-10-26 23:30:14 +02:00
Dean Herbert
d03161ec01
Apply distance snap time component even when nearby object snap kicks in
2022-10-26 14:39:39 +09:00
Dean Herbert
7d59bc6e2f
Merge branch 'grid-momentary-shortcuts' into read-current-distance-snap
2022-10-26 13:28:04 +09:00
Dean Herbert
54ae16badc
Move distance snap toggle button implementation to DistancedHitObjectComposer
2022-10-26 13:27:23 +09:00
Dean Herbert
2f0283e4d4
Simplify logic with new multi-grid snap support
2022-10-25 14:22:30 +09:00
Dean Herbert
2b850694fa
Merge branch 'allow-distance-grid-snap' into grid-momentary-shortcuts
2022-10-25 14:10:45 +09:00
Dean Herbert
02a3f8c17f
Allow both distance snap and grid snap to be applied at the same time
2022-10-25 14:09:22 +09:00
Dean Herbert
645a84b1d6
Display current distance snap and add button to update to use it
2022-10-21 22:58:36 +09:00
Dean Herbert
ca91f9f716
Don't allow two momentary toggles at the same time to avoid edge cases
2022-10-21 17:16:55 +09:00
Dean Herbert
ef990c55ca
Handle distance/grid toggles based on key type, rathern than individual left/right
2022-10-21 16:11:19 +09:00
Dean Herbert
966dd786ae
Don't consume keys when handling momentary snap toggles
2022-10-20 00:00:24 +09:00
Dean Herbert
830b92d3ae
Add momentary shortcuts to toggle grid/distance snap
...
Matching osu!stable. I use these quite a lot while mapping and I'm sure
others do as well.
Hold `Shift` = invert grid snap
Hold `Alt` = invert distance snap
2022-10-19 20:06:41 +09:00
Dean Herbert
6a7f6c76ff
Fix osu! editor padding being applied to toolboxes
...
The result of https://github.com/ppy/osu/pull/20739 and https://github.com/ppy/osu/pull/20738 having unintended side effects when applied together.
2022-10-18 14:32:00 +09:00
OliBomby
b22e201289
Fixed stream convert float precision edge case
2022-10-08 23:43:23 +02:00
B3nn1
112bbe2296
Always use Parent.ToScreenSpace() in PathControlPointVisualiser
2022-09-21 18:56:22 +02:00
B3nn1
5d54354588
Add missing ToScreenSpace() call
2022-09-21 18:53:25 +02:00