Dean Herbert
63e6eaf538
Fix failing tests
2023-10-30 18:06:11 +09:00
Dean Herbert
57d88a0ac4
Fix right clicks on timeline objects potentially getting eaten by playfield area
...
`SelectionHandler` is receiving input from anywhere out of necessity:
19f892687a/osu.Game/Screens/Edit/Compose/Components/SelectionHandler.cs (L119-L125)
Also important is that `BlueprintContainer` will selectively not block
right clicks to make sure they fall through to the
`ContextMenuContainer`:
19f892687a/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs (L122-L126)
But because the whole editor is sharing a `ContextMenuContainer` and
it's at a higher level than both components, we observe here the
playfield's `SelectionHandler` intercepting the right click before it
can reach the `ContextMenuContainer`.
The fix here is similar to what we're already doing in
`TimelineBlueprintContaienr`.
2023-10-30 18:06:11 +09:00
Bartłomiej Dach
7d8f08c0ea
Fix ComposeBlueprintContainer
briefly assigning auto
bank
...
Seems to have had no consequence due to the way
`AutomaticBankAssignment` works (that flag is checked in
`PlacementBlueprint.UpdateTimeAndPosition()`, which runs essentially
every frame), but let's avoid putting it there at all ever.
2023-05-25 21:49:29 +02:00
Dean Herbert
3a05dffa50
Add "auto" bank selection during placement
2023-05-24 17:11:12 +09:00
Dean Herbert
fc22c75464
Don't use switch
for single case
statement
2023-05-24 16:14:05 +09:00
Dean Herbert
a9ba16a2be
Update to support non-control-point sample changes
2023-05-24 14:20:38 +09:00
Dean Herbert
298989ffd2
Merge branch 'master' into sample-set-controls
2023-05-24 14:03:04 +09:00
Dean Herbert
dc51d5ecf3
Rename GetSampleInfo
to better describe what method does
...
Also add full xmldoc
2023-05-17 14:07:48 +09:00
Dean Herbert
d9ae822966
Fix bank not correctly being assigned when adding sample additions in editor
2023-05-16 18:52:52 +09:00
Dean Herbert
70e248b927
Force placement of in-progress object when changing tools in the editor
2023-05-12 16:06:01 +09:00
Dean Herbert
b437501b0f
Fix beatmap editor positional nudging not being undoable
2023-02-03 17:28:58 +09:00
Dylan Nantz
6028abff39
Code Quality
2023-01-13 10:16:52 -05:00
Dylan Nantz
5dd0aaccef
Merge branch 'master' of https://github.com/ppy/osu into 18469
2023-01-13 09:54:29 -05:00
Dylan Nantz
e38075c4ef
Use PlacementState to check juice stream placement
2023-01-13 09:37:23 -05:00
Derrick Timmermans
5c8fce1c08
Remove extra blank line
2022-11-30 13:05:14 +01:00
Derrick Timmermans
6a61e70766
Expose Ruleset from HitObjectComposer instead
2022-11-30 12:17:58 +01:00
Dean Herbert
4215f4f5d7
Merge branch 'master' into Editor-DrawableRuleset-Dependencies
2022-11-30 17:42:46 +09:00
Derrick Timmermans
70c320b2e8
Provide ruleset dependencies only to Compose Placement Blueprints
2022-11-27 21:43:33 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Dean Herbert
849b50a38f
Use ToUpperInvariant
for added safety
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-10-21 00:16:33 +09:00
Dean Herbert
372a655be1
Ensure placement uses currently selected bank
2022-10-19 21:39:51 +09:00
Dean Herbert
50e24ddd87
Add icon and radio button logic
2022-10-19 21:35:08 +09:00
ekrctb
fcb9e2cc00
Refactor blueprint container drag code
2022-10-11 22:39:53 +09:00
ekrctb
1a24762f9b
Improve drag box selection logic
...
`AllowDeselectionDuringDrag` is remove.
Instead, selected hit objects are not automatically deselected
when clock is seeked to a later time (the hit object is dead).
Update drag box selection even if mouse is not moved
(in case clock is running or scroll wheel is used).
2022-10-11 14:11:45 +09:00
ekrctb
6753f6b01a
Move AllowDeselectionDuringDrag
down
...
Because it is now ignored in the timeline implementation anyways
2022-10-05 22:14:11 +09:00
Salman Ahmed
a5e5172b91
Fix BlueprintContainer
eating input from skin editor buttons
2022-06-18 18:28:36 +03:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Salman Ahmed
c49b8e4a5c
Allow BlueprintContainer
and SelectionHandler
to receive input outside bounds
2022-06-14 00:19:15 +03:00
Dean Herbert
f6fc926f1a
Add xmldoc and rename methods in IPositionSnapProvider
for legibility
2022-05-05 15:58:21 +09:00
ekrctb
eec4457473
Add [CanBeNull]
to methods returning null by default
2021-06-23 09:40:07 +09:00
ekrctb
a9c7830252
Fix NRE when hit object blueprint is not implemented
2021-06-22 17:20:13 +09:00
Dean Herbert
4fc6ba50b7
Fix editor placement ending early if a blueprint becomes alive from a pool
...
Closes https://github.com/ppy/osu/issues/12630 .
2021-05-24 17:04:02 +09:00
smoogipoo
aaf31af326
Add blueprint transferral
2021-05-13 21:16:19 +09:00
smoogipoo
ffb6135a1b
Rework hitobject blueprints to take in hitobject models
2021-05-13 19:53:32 +09:00
Dean Herbert
9c62c90cfc
Refactor SelectionBlueprint
and MoveSelectionEvent
to work in screen-space coordinates
...
Until now, the implementation of the overrides in `SelectionBlueprint`
have been confusing to the point where I would just implement by
trial-and-error (or copying from an existing implementation). This was
due to a combination of using "object" space coordinates
(ie. the thing the `Blueprint` is operating on) and screen-space coordinates.
This change switches all event related coordinates to screen-space,
which is how we already handle rotation/scale operations. With the
introduction of other editor types where the related objects are
drawables, this also makes a lot more sense.
2021-04-29 16:10:42 +09:00
Dean Herbert
7ec5ea1eb5
Remove hitobject terminology from base classes
2021-04-27 19:01:29 +09:00
Dean Herbert
ff06a27a12
Revert changes to OnBlueprint
methods and handle select-on-addition locally
2021-04-27 19:01:29 +09:00
Dean Herbert
f2e56bd306
Refactor editor selection/blueprint components to be generic
2021-04-27 19:01:29 +09:00
Dean Herbert
119c9b4294
Fix placement blueprints not being correctly removed after a rolled back placement
2021-04-16 14:11:33 +09:00
Dean Herbert
f6647de769
Add support for nudging objects in the editor using ctrl+arrow keys
...
Closes #12042 .
2021-03-25 19:56:28 +09:00
Dean Herbert
e9730d4782
Move default sample addition to inside PlacementBlueprint
...
This isn't actually required to fix the behaviour but it does feel like
a better place to put this logic.
2021-02-11 17:16:18 +09:00
smoogipoo
5760e1c1fc
Make HitSampleInfo immutable
2020-12-01 15:37:51 +09:00
Dean Herbert
da6bccc812
Apply beat snap if positional snap doesn't give a time result
2020-11-26 19:20:51 +09:00
Dean Herbert
9811c46e35
Rename application method to better describe what it actually does
2020-11-26 19:16:18 +09:00
smoogipoo
0219aff7bc
Add timeline visible range adjustment
2020-11-13 17:10:29 +09:00
smoogipoo
4ef2e9548c
Pass HitObjectComposer to BlueprintContainer via ctor
2020-11-13 16:59:37 +09:00
Dean Herbert
88f74921fb
Update with new r# inspections
2020-10-16 12:49:39 +09:00
Dean Herbert
e7eda19b07
Reset new combo button state after successful placement
2020-10-09 03:31:01 +09:00
Dean Herbert
0ae2266b82
Fix new placement hitobjects in the editor not getting the default sample added
2020-09-28 15:36:13 +09:00
Dean Herbert
dbfa05d3b3
Fix placement object not getting updated with initial state
2020-09-25 18:00:17 +09:00