Dean Herbert
df08c4e1ad
Disable decoupling for OsuGameBase
's beatmap implementation
...
This avoids it ever mutating the underlying track (aka attempting to start
it). Resolves the one caveat mentioned in
aeef92fa710648d4a00edc523e13c17ac6104125.
2023-09-22 12:49:25 +09:00
Dean Herbert
600651795b
Change FramedBeatmapClock
to always be decoupled
2023-09-22 12:49:25 +09:00
Salman Ahmed
9e4a56d64e
Merge branch 'master' into update-framework
2023-09-21 19:49:20 +03:00
Dean Herbert
bf984388b3
Update clocks in line with framework changes
2023-09-20 21:17:08 +09:00
Dean Herbert
c5397bdbb3
Merge branch 'master' into mania-edit-disable-sv
2023-09-20 14:23:07 +09:00
Dean Herbert
1a37543d28
Rename SliderVelocity
to SliderVelocityMultiplier
to distinguish from Velocity
2023-09-06 19:01:08 +09:00
Hồ Nguyên Minh
d5a89c4c45
Fix formatting
2023-09-04 13:32:42 +07:00
Hồ Nguyên Minh
b17a55d6a8
Add length check for slider velocity
2023-09-04 10:43:05 +07:00
Wleter
fc4069f794
let SelectionBox perform flip with scale handles
2023-09-01 13:01:51 +02:00
Dean Herbert
0f5eff1230
Merge branch 'master' into mania-edit-disable-sv
2023-09-01 19:08:48 +09:00
Wleter
14ee0ee395
Merge branch 'ppy:master' into skin-editor-selection-negative-scaling
2023-08-29 17:30:55 +02:00
Wleter
d56ab0fe9a
change names
2023-08-29 17:25:52 +02:00
Wleter
07e126241d
working negative scaling
2023-08-28 16:41:55 +02:00
Dean Herbert
081fb308e1
Merge branch 'master' into new-overlay-sfx
2023-08-24 18:29:00 +09:00
Dean Herbert
8120c3f87a
Merge branch 'master' into precise-rotation-2
2023-08-19 23:25:42 +09:00
Dan Balasescu
a2fd7707a1
Allow toggling SVs in the editor
2023-08-18 18:55:24 +09:00
Dean Herbert
9023059bc0
Convert to switch statement
2023-08-18 17:27:09 +09:00
OliBomby
360f9750e1
Allow selecting empty control point groups
2023-08-17 16:30:18 +02:00
Jamie Taylor
d10d7b6ea4
Change some component samples to go better with overlay pop-in samples
2023-08-17 18:36:37 +09:00
Jamie Taylor
3d7ba0e18c
Add pop-in/pop-out sfx to more overlays
2023-08-17 18:36:37 +09:00
Bartłomiej Dach
19f892687a
Add precise rotation control to osu! editor
2023-08-16 11:37:52 +02:00
Bartłomiej Dach
bdf87e43db
Merge branch 'master' into slider-with-textbox-instantaneous
2023-08-16 10:48:45 +02:00
Dean Herbert
5bd7370439
Add log output when editor is creating a fresh beatmap
2023-08-16 14:23:17 +09:00
Joseph Madamba
49f5d6813e
Block beatmap editor from testing/exiting/exporting when saving fails
2023-08-04 22:08:25 -07:00
Bartłomiej Dach
2e2b0c4e41
Move SliderWithTextBoxInput
to more general namespace
2023-08-01 01:01:36 +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
e208f38bcb
Merge pull request #24361 from peppy/fix-editor-global-music-hotkey-conflicts
...
Disallow interacting with the global track state in `Player` and `Editor`
2023-07-30 12:28:53 +02:00
Dean Herbert
945d89e955
Move disables to loading screens for better coverage of edge cases
2023-07-30 13:45:42 +09: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
Bartłomiej Dach
3b9f250c1b
Merge branch 'master' into menu-star-fountains
2023-07-25 21:58:13 +02:00
Dean Herbert
3485b72eaa
Disallow interacting with the global track state in Player
and Editor
2023-07-25 20:20:53 +09:00
Dean Herbert
157b1f301b
Rename AllowTrackAdjustments
to more understandable ApplyModTrackAdjustments
2023-07-25 20:20:53 +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
Bartłomiej Dach
9f68bb4e4a
Merge pull request #24333 from peppy/editor-menu-spacer
...
Adjust metrics of editor menu spacers (and make visible)
2023-07-23 15:25:27 +02:00
Dean Herbert
4bf300d64d
Merge pull request #24186 from OliBomby/legacy-export
...
Add ability to export beatmaps from editor in a stable-compatible format
2023-07-23 15:25:06 +09:00
Dean Herbert
4ea8495c61
Adjust metrics of editor menu spacers (and make visible)
2023-07-23 14:12:37 +09:00
Dean Herbert
fb34ee94c2
Move export/save options to bottom of menu
2023-07-23 14:07:31 +09:00
Dean Herbert
20359c90bc
Adjust localisations slightly
2023-07-23 14:06:00 +09:00
Dean Herbert
d11e56b8bb
Add common Export
string and use in editor
2023-07-23 14:03:50 +09:00
Bartłomiej Dach
d1c69283b2
Merge branch 'master' into editor-key-count
2023-07-22 16:11:21 +02:00
Bartłomiej Dach
f985bdc10f
Make difficulty sliders private set
2023-07-22 15:55:20 +02:00
Dean Herbert
fd2bdc10c7
Fix "key count" setting showing as "circle size" in osu!mania editor
...
Closes https://github.com/ppy/osu/issues/12904 .
2023-07-21 18:52:29 +09:00
Dean Herbert
82a5ba66e1
Align mode switcher with rest of interface
2023-07-21 15:27:42 +09: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
870f3e324a
Adjust "test" button to better align with rest of interface
2023-07-21 14:26:33 +09:00
Dean Herbert
ca3d1538ae
Merge branch 'master' into editor-metrics
2023-07-21 14:26:32 +09:00
Dean Herbert
b29a2081ac
Merge branch 'master' into menu-star-fountains
2023-07-21 14:21:16 +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
Bartłomiej Dach
f3a95d4c13
Merge branch 'master' into menu-star-fountains
2023-07-19 21:26:41 +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
55a41b0887
Fix overlap between header text and menu items
2023-07-19 15:13:20 +09:00
Dean Herbert
871056790b
Mark editor tile as non-localisable
2023-07-19 15:01:20 +09:00
OliBomby
395dd23966
Put 'Export package' and 'Export legacy package' in one nested menu
2023-07-18 12:37:37 +02:00
OliBomby
5d82190b70
Merge remote-tracking branch 'upstream/master' into legacy-export
2023-07-18 12:18:49 +02:00
Dean Herbert
fe70f24925
Update design of summary timeline current time marker
2023-07-14 17:00:42 +09:00
Dean Herbert
e6b8cd0c06
Add editor header
2023-07-14 16:55:12 +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
6b222cfafd
Fix slight misalignment so timeline is now completely centered
2023-07-14 14:29:13 +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
Dean Herbert
20e4e2581a
Change IBeatSyncProvider.Clock
to always be non-null
2023-07-13 22:13:40 +09:00
Susko3
2dcd790442
Resolve Clipboard
via DI
2023-07-11 11:42:31 +02:00
OliBomby
06e5ef88c0
legacy export broken
2023-07-11 02:30:16 +02:00
Bartłomiej Dach
45194b2b4a
Fix pressing Ctrl-C in composer not copying timestamp to system clipboard
2023-07-09 18:21:43 +02: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
003949ac4e
Merge branch 'master' into limited-distance-spacing
2023-06-16 16:56:22 +09:00
Dean Herbert
f553efba8a
Fix playback controls in editor handling key repeat when they probably shouldn't
...
Closes https://github.com/ppy/osu/issues/23903 .
2023-06-14 02:30:15 +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
b66d1aa33d
Fix code quality inspection
2023-06-08 20:32:16 +02:00
Dean Herbert
c1743dbe1d
Select all text when popover is initially shown
...
Depends on https://github.com/ppy/osu-framework/pull/5823 .
2023-06-09 02:27:22 +09:00
Bartłomiej Dach
281aae91ec
Merge pull request #23808 from peppy/working-beatmap-get-background
...
Refactor `IWorkingBeatmap.Background` to `GetBackground()`
2023-06-08 12:23:07 +02:00
Dean Herbert
a842f79ad4
Refactor IWorkingBeatmap.Background
to GetBackground()
2023-06-08 16:19:32 +09:00
Bartłomiej Dach
b3ce7f7b43
Merge branch 'master' into fix-section-container-scroll-attempt-2
2023-06-08 09:19:26 +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
Bartłomiej Dach
9b665d2e1a
Merge branch 'master' into beat-snap-divisor-hotkeys
2023-06-07 23:38:03 +02:00
Dean Herbert
3a01498789
Use existing next/previous methods (and remove looping behaviour)
2023-06-08 01:01:29 +09:00
Bartłomiej Dach
1f4e79d79d
Merge pull request #23711 from timiimit/add-last-edit-time
...
Store timestamp of beatmap's last edit time in local database
2023-06-07 16:57:24 +02: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
Dean Herbert
7d49f5d7c6
Apply NRT to SectionsContainer
2023-06-07 16:32:29 +09:00
Salman Ahmed
62cb6a98ca
Remove redundant nullable suppression directives
2023-06-07 08:20:41 +03:00
Dean Herbert
22f7fe1d79
Rename variable and ensure timestamp is updated even when not saving
2023-06-06 15:11:31 +09:00
Dean Herbert
3a50e0fb2f
Merge branch 'master' into add-last-edit-time
2023-06-06 15:07:20 +09:00
Bartłomiej Dach
c2d89a32a9
Adjust inline comment
2023-06-01 21:18:00 +02:00
Andrei Zavatski
03eb7c7830
Fix nullability
2023-06-01 21:21:01 +03:00
Andrei Zavatski
949fe32740
Use combined area of children as a mask instead
2023-06-01 15:32:17 +03:00
Dean Herbert
32207d4112
Remember the last used custom divisor when cycling divisor types
2023-06-01 17:11:49 +09:00
Dean Herbert
bcde2cbc73
Apply NRT to BeatDivisorControl
2023-06-01 16:58:14 +09:00
Dean Herbert
f52ed41f10
Use better defaults of 1/4 and 1/6 when cycling types
2023-06-01 16:28:03 +09:00
timiimit
a58426dab6
Use LastEditTime
in Editor
2023-05-31 19:07:04 +02:00
Andrei Zavatski
d119447a10
Fix editor timeline hitobjects popping in
2023-05-30 16:41:42 +03:00
Dean Herbert
725734bc03
Merge pull request #23649 from peppy/keep-selection-buttons-on-screen
...
Ensure editor selection buttons remain on screen when selection is near edge
2023-05-26 20:51:45 +09:00
Bartłomiej Dach
96fe7cbe54
Merge branch 'master' into sample-set-controls
2023-05-25 21:58:16 +02: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
Bartłomiej Dach
3ad5f8b9c9
Polish a few extreme edge cases
2023-05-25 16:39:54 +02:00
Dean Herbert
949de35664
Ensure selection is reset after immediately deleting objects
...
Closes https://github.com/ppy/osu/issues/23518 .
2023-05-25 23:20:32 +09:00
Bartłomiej Dach
beeca5a8dd
Use alternative layouting implementation
2023-05-25 16:17:44 +02:00
Dean Herbert
1049257b56
Simplify SelectionHandler
's DeselectAll
implementation
...
We are already doing other operations in this class directly on `SelectedItems`, so might as well change this one to match
2023-05-25 18:46:31 +09:00
Dean Herbert
1e14b02493
Fix bindable feedback loop
2023-05-25 17:58:38 +09:00
Bartłomiej Dach
578a0e7494
Merge branch 'master' into beat-divisor-visual-improvements
2023-05-24 22:28:26 +02:00
Bartłomiej Dach
6ec4ecfdd7
Mention fallback default in GetDivisorForBeatIndex()
2023-05-24 22:17:51 +02:00
Dean Herbert
b14b1072c2
Allow deselecting any selection in the editor using the Back
binding (escape key)
2023-05-24 19:24:14 +09:00
Dean Herbert
3b9e1e8a94
Ensure editor selection buttons remain on screen when selection is near edge
...
Addresses https://github.com/ppy/osu/discussions/23599 .
2023-05-24 19:16:53 +09: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
561b759bf9
Tidy up implementation and ensure non-solid ticks start at zero alpha
2023-05-24 13:49:29 +09:00
Dean Herbert
8f1f1955df
Merge pull request #66 from Gyoshi/beat-divisor-visual-improvements
...
Add ghost ticks to exhibit current divisor on `BeatDivisorControl`
2023-05-24 13:41:48 +09:00
Gyoshi
7fe19d1992
Last
instead of Max
divisor to match code elsewhere
2023-05-23 18:45:49 +02:00
Gyoshi
c5ef3ae181
Code styling
2023-05-23 18:44:20 +02:00
Gyoshi
b5f8093941
Use RangePadding
to align mouse with slider
2023-05-23 18:16:14 +02:00
Gyoshi
7b1e8ede54
Small format
2023-05-23 15:11:27 +02:00
Gyoshi
1b32370c6a
Remove duplicate code by making GetDivisorForBeatIndex
method more general
2023-05-23 15:05:38 +02:00
Gyoshi
37a796306d
Small format & comment
2023-05-23 14:30:35 +02:00
Johannes vd Berg
ebda35c3c9
Add ghost ticks to exhibit current divisor on BeatDivisorControl
2023-05-23 12:57:25 +02:00
Bartłomiej Dach
38b4bd8aef
Fix undo not behaving as expected sometimes
2023-05-22 22:45:39 +02:00