Bartłomiej Dach
ec24b32fa6
Add NRT coverage for FileChooserLabelledTextBox
2022-06-02 20:36:28 +02:00
Dean Herbert
ad3c093a08
Improve group tracking logic to avoid switching which point type unnecessarily
2022-06-02 18:33:09 +09:00
Dean Herbert
2fa4d46f73
Change text on timing group add button when it is going to clone instead
...
Also disables the button when it would otherwise have no effect.
2022-06-02 18:28:16 +09:00
Dean Herbert
0b125ade4c
Allow clicking away to deselect the current control point group
2022-06-02 18:18:18 +09:00
Dean Herbert
5a0f716bf2
Fix timing screen crash when attempting to add group to self
...
Closes #18527 .
2022-06-02 18:14:28 +09:00
Dean Herbert
ee4beefd95
Increase max taps to 128 for now
...
Will revisit this in the future with a more sound algorithm.
2022-06-02 17:27:52 +09:00
Dean Herbert
e75609dfb9
Increase taps to consider for better results for longer tap periods
2022-06-02 17:03:48 +09:00
Dean Herbert
4abfb35611
Improve light rotational alignment and increase light count to 8
2022-06-02 16:58:14 +09:00
Dean Herbert
060372a129
Split out transition length constants
2022-06-02 13:16:31 +09:00
Dean Herbert
15f8d318eb
Add note about glow code (please look away)
2022-06-02 13:13:00 +09:00
Dean Herbert
ac3793f340
Move inline class to end and apply NRT
2022-06-02 13:10:50 +09:00
Dean Herbert
d99d37c0a6
Apply current track rate to calculated BPM
2022-06-02 13:06:18 +09:00
Dean Herbert
943e904c71
Fix reset happening on mouse down instead of mouse up
...
Also some reorganisation of file content for legibility
2022-06-02 12:58:44 +09:00
Dean Herbert
0c493dd359
Add key binding for tap button
2022-06-02 12:58:44 +09:00
Dean Herbert
781a1527b1
Adjust button metrics and move surrounding buttons to be more integrated
2022-06-02 12:58:43 +09:00
Dean Herbert
d4e88441ec
Adjust metrics to make timing section fit better in editor
2022-06-02 11:57:06 +09:00
Dean Herbert
f3f7e28353
Ignore initial taps as they are generally inaccurate
2022-06-02 11:57:06 +09:00
Dean Herbert
b88bce9b8b
Restart track playback when tapping to time
2022-06-02 11:57:06 +09:00
Dean Herbert
96ccd29bdc
Don't play metronome click when tapping for timing
2022-06-02 11:57:06 +09:00
Dean Herbert
d47a3bb8e4
Use NRT and transfer BPM
2022-06-02 11:57:06 +09:00
Dean Herbert
a2d177d7d2
Add BPM display and tracking
2022-06-02 11:57:06 +09:00
Dean Herbert
3c7a04256f
Add glow
2022-06-02 11:57:06 +09:00
Dean Herbert
c3ba7b2c3b
Add lights
2022-06-02 11:57:06 +09:00
Dean Herbert
d12f6ea221
Add basics of tap button
2022-06-02 11:57:06 +09:00
Dean Herbert
453259df62
Merge pull request #18516 from peppy/metronome-sound
...
Add metronome sound
2022-06-02 07:38:42 +09:00
Dean Herbert
6b297bc6ed
Merge pull request #18502 from peppy/editor-timing-follow-current-time
...
Add automatic control point tracking to the timing screen
2022-06-02 07:37:03 +09:00
Bartłomiej Dach
c0001d7f00
Merge branch 'master' into metronome-sound
2022-06-01 22:32:48 +02:00
Bartłomiej Dach
d3b51c7387
Merge branch 'master' into editor-waveform-display-lock
2022-06-01 21:56:01 +02:00
Bartłomiej Dach
0723709bec
Merge branch 'master' into editor-offset-bpm-adjust-buttons
2022-06-01 21:25:18 +02:00
Bartłomiej Dach
801e11d841
Apply performance regression fix to effect section too
2022-06-01 20:25:56 +02:00
Bartłomiej Dach
6b709de2c2
Remove unused using directive
2022-06-01 20:18:02 +02:00
Bartłomiej Dach
a5d515dd0c
Merge branch 'master' into editor-new-control-point-is-bettert
2022-06-01 19:48:17 +02:00
Dean Herbert
534e8f8fac
Only switch to found group if non-null
2022-06-01 20:20:48 +09:00
Dean Herbert
a4ec32b499
Add button sound effect
2022-06-01 18:15:16 +09:00
Dean Herbert
93b8c90ecc
Apply frequency adjust to channel rather than sample for safety
2022-06-01 18:04:13 +09:00
Dean Herbert
0472881078
Fix null check only covering one of two calls
2022-06-01 18:03:03 +09:00
Dean Herbert
187acb0718
Simplify linq tracking logic
2022-06-01 17:57:53 +09:00
Dean Herbert
1293bbdbd9
Remove unnecessary null checks on Text
property
2022-06-01 17:46:33 +09:00
Dean Herbert
8c54bd46bb
Rename button to more appropriate name
2022-06-01 17:46:05 +09:00
Dean Herbert
b03b0c9303
Merge branch 'master' into editor-offset-bpm-adjust-buttons
2022-06-01 17:45:16 +09:00
Dean Herbert
c55c3325a4
Remove unused using statements
2022-06-01 17:43:40 +09:00
Dean Herbert
f3fd5bbfc1
Increase flash delay and ensure text is always shown immediately on lock
2022-06-01 16:05:29 +09:00
Dean Herbert
58ba92772c
Reword comment to read better
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-06-01 16:01:34 +09:00
Dean Herbert
eac014738f
Merge branch 'master' into editor-bottom-bar-shadow
2022-06-01 14:55:50 +09:00
Dean Herbert
6042cf1a3b
Add metronome sound
...
Placeholder pending follow-up from @nekodex (which as discussed should
probably have a second sound for the metronome locking into "stopped"
position).
2022-06-01 14:43:39 +09:00
Dean Herbert
25941f6187
Use DeepClone
instead of reflection call
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-06-01 10:47:45 +09:00
Dean Herbert
bc22079fdc
Fix row selected colour flicker when changing offset rapidly
2022-05-31 22:02:30 +09:00
Dean Herbert
8240b645b4
Copy attribute types from currently selected control point to new placements
2022-05-31 21:50:12 +09:00
Dean Herbert
f99bcb23a0
Automatically make first control point added to beatmap have timing data
2022-05-31 21:50:08 +09:00
Dean Herbert
a940676fc2
Add adjustment buttons
2022-05-31 21:31:20 +09:00
Dean Herbert
475cc8174f
Fix off-by-one display issue when adjusting offset
2022-05-31 18:41:44 +09:00
Dean Herbert
94194a04f2
Animate adjustments
2022-05-31 18:41:44 +09:00
Dean Herbert
51014b8748
Ensure offset changes are correctly tracked by the display, even when locked
2022-05-31 18:41:44 +09:00
Dean Herbert
c8f21ee8b2
Change WaveformComparisonDisplay
to centre around a time offset rather than beat
2022-05-31 18:41:44 +09:00
Dean Herbert
6bc68ada43
Add ability to lock the WaveformComparison
display to a current location
2022-05-31 18:41:44 +09:00
Dean Herbert
c0804803fd
Add background to main waveform row
2022-05-31 18:35:52 +09:00
Dean Herbert
655780fd98
Fix regression in bpm textbox binding logic
2022-05-31 18:27:18 +09:00
Dean Herbert
ebb83a5e49
Add TODO about scroll behaviour which is missing
2022-05-31 15:10:55 +09:00
Dean Herbert
cf5da44492
Add automatic control point tracking to the timing screen
2022-05-31 15:00:30 +09:00
Dean Herbert
27efeb7d4e
Fix TimingSection
performing a beatmap save when switching bound timing points
2022-05-31 14:58:49 +09:00
Dan Balasescu
be998cdb0a
Merge pull request #18477 from frenzibyte/fix-timeline-context-menu
...
Fix context menu no longer opening for hitobjects in timeline
2022-05-30 11:49:06 +09:00
Bartłomiej Dach
c892ec83ef
Fix wrong sizing of editor timeline ticks
2022-05-29 20:15:17 +02:00
Salman Ahmed
9cc5df9b13
Fix context menu no longer open on hitobjects in timeline
2022-05-29 15:23:32 +03:00
Salman Ahmed
02baf9a97a
Fix timeline objects disappearing prematurely on wide-screens
2022-05-28 17:45:38 +03:00
Dean Herbert
62266c72ea
Merge pull request #18448 from frenzibyte/editor-metronome-rate
...
Fix metronome speed not adjusted on different playback rates
2022-05-28 10:58:51 +09:00
Dean Herbert
4f2910cdb1
Merge pull request #18445 from frenzibyte/editor-background-colour
...
Darken background colour in "setup" and "verify" screens
2022-05-28 10:56:22 +09:00
Dean Herbert
68684f5fe7
Merge pull request #18446 from frenzibyte/editor-row-attribute-background
...
Update row attribute background colour to fit screen
2022-05-28 10:53:50 +09:00
Dean Herbert
93a8092da6
Increase usable width slightly further
2022-05-28 10:51:39 +09:00
Salman Ahmed
e12d188dad
Fix metronome speed not adjusted on different playback rates
2022-05-28 04:10:39 +03:00
Salman Ahmed
d12e4928e6
Increase editor verify settings width to give more breathing space
2022-05-28 03:09:04 +03:00
Salman Ahmed
e71d907164
Update row attribute background colour to fit screen
2022-05-28 02:20:04 +03:00
Salman Ahmed
eec9248cde
Darken background colour in "setup" and "verify" screens
2022-05-28 02:10:18 +03:00
Salman Ahmed
aee3e2a4ed
Add shadow effect to editor's bottom bar
2022-05-28 01:58:55 +03:00
Bartłomiej Dach
e511c1dfff
Merge branch 'master' into use-normalised-precise-scrolling
2022-05-27 16:55:13 +02:00
Joseph Madamba
e551a53601
Fix checkmarks not showing on editor stateful menu items
2022-05-26 21:45:30 -07:00
Dean Herbert
fb586fe0b2
Merge branch 'master' into editor-bottom-bar-new-design
2022-05-26 18:32:28 +09:00
Dean Herbert
7f4ea5d522
Use left alignment and remove hacky text positioning code
2022-05-26 18:12:28 +09:00
Dean Herbert
acd554d918
Update time info and add bpm
2022-05-25 23:54:59 +09:00
Dean Herbert
2c61a9d3d1
Update bottom bar components to new design language (mostly)
2022-05-25 23:54:59 +09:00
Dean Herbert
8791e3b9ef
Split BottomBar
out of Editor
2022-05-25 23:54:59 +09:00
Dean Herbert
463b8130c8
Update editor screen switcher to match new design language
2022-05-25 22:31:27 +09:00
Dean Herbert
206f2ca208
Rename screen switcher control to be in line with naming expectations
2022-05-25 22:20:33 +09:00
Dean Herbert
c4cae7f677
Update EditorMenuBar
to match new design language
2022-05-25 22:19:24 +09:00
Dan Balasescu
fb22801afb
Merge pull request #18388 from peppy/editor-timing-waveforms
...
Add waveform comparison view to editor timing screen
2022-05-25 20:15:25 +09:00
Dean Herbert
f1d4902be5
Remove unnecessary bindable cast
2022-05-25 19:25:23 +09:00
Dan Balasescu
f468d1eb16
Merge branch 'master' into editor-tidy-up
2022-05-25 11:58:34 +09:00
Bartłomiej Dach
5f6baaca13
Merge branch 'master' into editor-beat-divisor-size-static
2022-05-24 23:17:02 +02:00
Dan Balasescu
25f35b3408
Merge pull request #18394 from peppy/editor-beat-divisor-on-mouse-down
...
Handle beat divisor input on mouse down, rather than mouse up
2022-05-24 19:06:14 +09:00
Dan Balasescu
46b2f1ecc2
Merge pull request #18392 from peppy/editor-remove-triangle-button-usage
...
Remove `TriangleButton` usage in editor
2022-05-24 18:51:02 +09:00
Dean Herbert
0bcf8c846c
Change editor colour scheme to aquamarine
2022-05-24 18:43:22 +09:00
Dean Herbert
648cee7106
Remove editor screen transitions for now
2022-05-24 18:43:22 +09:00
Dean Herbert
3f5ccd4db8
Update timing screen sections to newer design metrics
2022-05-24 18:43:22 +09:00
Dean Herbert
c02ec05056
Remove remaining usage of EditorRoundedScreen
2022-05-24 18:43:22 +09:00
Dean Herbert
1d196262d0
Remove unused OnTimelineLoaded
flow
2022-05-24 18:43:22 +09:00
Dean Herbert
a905731053
Update timeline colours and paddings to match new designs
2022-05-24 18:43:22 +09:00
Dean Herbert
17206bbebf
Update screen padding and colouring to better match new designs
2022-05-24 18:43:22 +09:00
Dean Herbert
a2bfd0ba41
Merge branch 'editor-remove-triangle-button-usage' into editor-combined
2022-05-24 18:43:02 +09:00
Dean Herbert
741cfcc614
Merge branch 'editor-beat-divisor-on-mouse-down' into editor-combined
2022-05-24 18:43:01 +09:00
Dean Herbert
3ace5f135e
Adjust marker to match design proportions
2022-05-24 18:26:01 +09:00
Dean Herbert
3c2e57bf00
Update BeatDivisorControl
to better match new designs and metrics
2022-05-24 18:26:01 +09:00
Dean Herbert
e6087f5f5b
Handle beat divisor input on mouse down, rather than mouse up
...
It felt way too unresponsive.
2022-05-24 18:16:19 +09:00
Dean Herbert
4a88affd03
Move beat divisor tick size retrieval to static methods
2022-05-24 18:15:20 +09:00
Dean Herbert
a346990a8c
Remove TriangleButton
usage in editor
2022-05-24 18:13:09 +09:00
Dean Herbert
1137545d4a
Fix Timeline
potentially not updating visuals to correct state on first display
2022-05-24 18:11:05 +09:00
Dean Herbert
49a2173646
Avoid needlessly updating display (and add better documentation on chosen scale)
2022-05-24 14:36:44 +09:00
Dean Herbert
4fcdcef166
Add indexing on each wavefrom row
2022-05-24 14:36:44 +09:00
Dean Herbert
c1720c128d
Dim rows which are not part of the active control point (and offset centre)
2022-05-24 14:36:44 +09:00
Dean Herbert
7040dec013
Fix disabled bindable woes by not using TimingControlPoint.DEFAULT
2022-05-24 14:36:44 +09:00
Dean Herbert
588c5d1583
Add initial waveform comparison display
2022-05-24 14:36:44 +09:00
Susko3
88217e0c98
Adjust ScrollDelta
usages to account for normalised IsPrecise
values
2022-05-23 20:22:27 +02:00
Dean Herbert
c9ea87e6be
Revert easing for now
2022-05-23 00:03:42 +09:00
Dean Herbert
007582afb9
Remove unused usings resulting from namespace move
2022-05-22 23:55:33 +09:00
Dean Herbert
eabf578282
Use interface to convey beat sync information
2022-05-22 22:44:54 +09:00
Dean Herbert
9a780bcad3
Remove unused using
2022-05-21 21:56:05 +09:00
Dean Herbert
376549ce09
Use ToLocalisableString
instead of CurrentCulture
2022-05-21 21:48:51 +09:00
Dean Herbert
8db80b92bb
Fix metronome not using EditorBeatmap
causing editor updates to not propagate immediately
2022-05-20 23:24:57 +09:00
Dean Herbert
82eb5fd2c9
Add centre line on weight
2022-05-20 17:30:04 +09:00
Dean Herbert
2e21d75b10
Move metronome into own class and rename to avoid conflict with mod sounds
2022-05-20 17:30:04 +09:00
Dean Herbert
cf97f4e409
Add centre marker
2022-05-20 17:30:04 +09:00
Dean Herbert
4712e512d7
Apply edge smoothness and make weight more accented
2022-05-20 17:30:04 +09:00
Dean Herbert
8487d2c48a
Interpolate bpm label and fix incorrect angle logic
2022-05-20 17:30:04 +09:00
Dean Herbert
21072a26ef
Add locking wedge
2022-05-20 17:30:04 +09:00
Dean Herbert
79878a4ec2
Metrics adjust and labelling
2022-05-20 17:30:04 +09:00
Dean Herbert
cf1ef28f72
Add taper and more correctly shaped weight
2022-05-20 17:30:04 +09:00
Dean Herbert
42179568f3
Initial animation pass on metronome
2022-05-20 17:30:04 +09:00
Dean Herbert
ce7be940e2
Setup basics for control and test
2022-05-20 17:30:04 +09:00
Dan Balasescu
64a371638e
Merge pull request #18236 from peppy/snap-unification
...
Add `enum` to snap method as alternative to multiple nested invocations
2022-05-20 11:35:05 +09:00
Dean Herbert
83e781d5a1
Allow localisation of PlaceholderText
2022-05-17 17:42:46 +09:00
Dean Herbert
17e0105c2c
Fix interaction with popover when textbox is disabled
2022-05-17 17:33:54 +09:00
Dean Herbert
3ff0399281
Split out LabelledTextBoxWithPopover
for reuse
2022-05-17 17:33:54 +09:00
Bartłomiej Dach
ab5c736da1
Merge branch 'master' into editor-readability
2022-05-13 21:10:48 +02:00
Dean Herbert
c4871ebcf4
Add editor track traversal keys (Z
-V
)
2022-05-14 02:50:51 +09:00
Dean Herbert
f22ff4e087
Remove editor animation toggling (replaced by overlap markers)
2022-05-12 19:28:56 +09:00
Dean Herbert
c0abce918f
Add enum
to snap method as alternative to mutliple nested invocations
2022-05-12 16:19:07 +09:00
Dan Balasescu
c54ca937c5
Fix CI inspections
2022-05-12 14:55:20 +09:00
Dean Herbert
f51607521c
Fix distance snap providing zero-distance snaps incorrectly
2022-05-12 13:11:55 +09:00
Dean Herbert
5800d7e99d
Merge pull request #18220 from frenzibyte/control-popover-focus
...
Focus textbox upon opening control point popovers
2022-05-11 19:41:25 +09:00
Salman Ahmed
96db530de6
Focus textbox on control point popovers
2022-05-11 09:55:34 +03:00
Salman Ahmed
24432dffc4
Add support for focusing intermediate slider-textbox component
2022-05-11 09:53:04 +03:00
Salman Ahmed
0b597e712e
Fix timeline not handling mouse down events
2022-05-11 09:39:27 +03:00
Bartłomiej Dach
cbd1169495
Move cache declarations of ISamplePlaybackDisabler
to interface
2022-05-08 10:38:58 +02:00
Bartłomiej Dach
9ae019eb39
Move ISamplePlaybackDisabler
to more general namespace
2022-05-08 10:38:58 +02:00
Bartłomiej Dach
202a603d72
Merge branch 'master' into distance-snap-grid-current-tiume
2022-05-07 08:49:30 +02:00
Dean Herbert
dd63657dfb
Merge pull request #18065 from huoyaoyuan/code-style
...
Enforce code style analysis shipped with .NET SDK
2022-05-07 14:58:19 +09:00
Dean Herbert
71758390b5
Fix time based distance grid alpha not correctly accounting for distance spacing multiplier
2022-05-07 13:37:36 +09:00
Salman Ahmed
723fce8174
Move inverting value to happen outside clamp
...
Looks to have no effect, but makes sense to happen outside instead.
2022-05-06 18:54:13 +03:00
Salman Ahmed
d78f1d158d
Use GetEndTime()
instead of StartTime
...
Companion to
246479bf34
2022-05-06 18:51:35 +03:00
Salman Ahmed
112496204d
Make nested class private
2022-05-06 18:50:28 +03:00
Salman Ahmed
3077d398ef
Merge branch 'master' into distance-snap-grid-current-tiume
2022-05-06 18:20:22 +03:00
Salman Ahmed
144d33f0d2
Merge branch 'master' into distance-snapping-test
2022-05-06 17:29:27 +03:00
Bartłomiej Dach
29a3ab7e7a
Halve drag box padding
...
Allows the drag box borders to collapse in on themselves to a single
line if the drag selection has zero width or height.
2022-05-06 15:21:35 +02:00
Dean Herbert
fad1f727bb
Fix editor drag box visuals
2022-05-06 20:34:44 +09:00
Dean Herbert
69592722f8
Highlight distance snap grid rings that are close to the current time value
2022-05-06 18:30:46 +09:00
Dean Herbert
118e58888b
Rename incorrectly named variable (radius is not diameter)
2022-05-06 17:51:51 +09:00
Dean Herbert
37cbc79283
Fix clamping logic to always clamp to the last displayed tick
2022-05-06 17:09:38 +09:00
Dean Herbert
684fef7f8c
Fix MaxIntervals
incorrectly factoring distance spacing multipiler into snap calculation
2022-05-06 17:09:02 +09:00
Dean Herbert
246479bf34
Fix snap extent not working correctly on sliders (and providing incorrect time values)
2022-05-06 15:54:37 +09:00
Dean Herbert
32b40bdabf
Rename DistanceBetweenTick
to be plural
2022-05-06 15:45:36 +09:00
Dan Balasescu
39d10487b9
Merge branch 'master' into snapping-tidy-distance
2022-05-05 19:55:55 +09:00
Dean Herbert
e83604a1fc
Merge branch 'master' into cache-at-interface
2022-05-05 18:54:24 +09:00
Dean Herbert
b9d8b7e413
Fix end time extent not being accounted for in new snap implementation
2022-05-05 18:49:12 +09:00
Dean Herbert
b2e9be70a5
Rewrite CircularDistanceSnapGrid
snapping implementation to use snap provider
2022-05-05 17:52:36 +09:00
Dean Herbert
4c884aea5d
Fix CircularDistanceSnapGrid
returning an incorrect time value when distance spacing is not 1.0
2022-05-05 17:09:14 +09:00
Dean Herbert
786c7f14d3
Expose DistanceSpacingMultiplier
to distance
2022-05-05 17:08:53 +09:00
Dean Herbert
de9b3d33eb
Rename misleading DistanceSpacing
variable
2022-05-05 17:08:09 +09:00
Dean Herbert
4226583afd
Merge branch 'cache-at-interface'
2022-05-05 16:52:03 +09:00
Dean Herbert
19cf9dc20b
Merge branch 'snapping-tidy-distance'
2022-05-05 16:51:32 +09:00
Dean Herbert
1c6a233cc0
Move snap provider caching to interfaces
2022-05-05 16:44:37 +09:00
Dean Herbert
b411b59006
Move IPlacementHandler
caching to interface
2022-05-05 16:43:02 +09:00
Dean Herbert
977e6d8a80
Add xmldoc for IDistanceSnapProvider
and related properties
2022-05-05 16:25:45 +09:00
Dean Herbert
f6fc926f1a
Add xmldoc and rename methods in IPositionSnapProvider
for legibility
2022-05-05 15:58:21 +09:00
Dean Herbert
df530cb5ab
Add highlighting to the position snap grid edges in addition to centre lines
2022-05-04 13:49:04 +09:00
Dean Herbert
0bb90c7b07
Fix gridline centering and ensure lines are always rendered using a fixed screen-space width
2022-05-04 13:41:55 +09:00
Huo Yaoyuan
7cf4dabe29
Fix IDE0005 and IDE0034
2022-05-03 13:09:19 +08:00
Salman Ahmed
173a6188eb
Add back float
cast to distance spacing computation
2022-04-29 08:41:37 +03:00
Salman Ahmed
fef94d49f4
Revert "Convert data type of DistanceSpacing
to float"
...
This reverts commit 7aaa88cac2
.
2022-04-29 08:02:07 +03:00
Salman Ahmed
abb88b0907
Move distance spacing application to DistanceSnapGrid
2022-04-28 10:54:38 +03:00
Salman Ahmed
7aaa88cac2
Convert data type of DistanceSpacing
to float
2022-04-28 10:24:36 +03:00
Salman Ahmed
2e8372fe90
Minor cleanup
...
Just from reading diff.
2022-04-28 07:14:43 +03:00
Salman Ahmed
59cf3ff50f
Move distancing methods from IPositionSnapProvider
to IDistanceSnapProvider
2022-04-28 05:48:45 +03:00
Salman Ahmed
70a93c0e7e
Move DistanceSpacingMultiplier
bindable to its own IDistanceSnapProvider
interface
2022-04-24 08:33:00 +03:00
Salman Ahmed
4f8f27a58b
Merge branch 'master' into osu-distance-spacing
2022-04-24 05:23:30 +03:00
Dean Herbert
832d37b2c2
Update screen transition events to use new event args
2022-04-22 00:52:44 +09:00
Joseph Madamba
5e5c8e78a6
Use existing web localisation for most hardcoded strings
2022-04-20 16:31:11 -07:00
Dean Herbert
043599081b
Split out INotificationOverlay
to allow for easier testing
2022-04-18 20:14:01 +09:00
Dean Herbert
e315313266
Split out IDialogOverlay
to allow for easier testing
2022-04-18 18:36:26 +09:00
Dean Herbert
90093c1d9d
Combine private
skin variable into exposed one
2022-04-18 13:32:37 +09:00
Salman Ahmed
2cb217e06c
Fix editor legacy beatmap skins not receiving transformer
2022-04-18 06:59:58 +03:00
Salman Ahmed
338d94626e
Expose underlying skin of EditorBeatmapSkin
2022-04-18 06:44:39 +03:00
Dean Herbert
fbf0e5a45c
Remove startFromSkipTarget
parameter and update usages that required said behaviour
2022-04-13 14:25:43 +09:00
Bartłomiej Dach
e14d5b8adb
Remove unused using directives
2022-03-31 21:20:30 +02:00
CenTdemeern1
a6875383fc
Rebind SaveState()
to bpmTextEntry
2022-03-31 21:06:05 +02:00
CenTdemeern1
52d723aaa6
Remove BPM slider
2022-03-31 20:11:07 +02:00
Bartłomiej Dach
f3aad77239
Remove unused local variable
2022-03-22 22:00:24 +01:00
Bartłomiej Dach
a38bafab91
Remove unused using directive
2022-03-22 22:00:05 +01:00
Dean Herbert
61ddf1e6cf
Disallow exiting the editor without saving (unless explicitly confirming)
2022-03-22 15:42:56 +09:00
Dean Herbert
f95bd89166
Revert editor exit behaviour to exit without changes for now
2022-03-22 14:46:57 +09:00
Dean Herbert
d811a70f4b
Change button types on editor exit dialog to match purpose
...
Addresses https://github.com/ppy/osu/discussions/17363 .
2022-03-21 16:06:59 +09:00
Dean Herbert
ba1642a680
Allow section headers to wrap
2022-03-16 17:19:08 +09:00
Dean Herbert
a0a033520f
Rider no add licence headers
2022-03-15 16:48:14 +09:00
Dean Herbert
4ab5d6e3f0
Remove unnecessary FillFlowContainer
from section
2022-03-15 16:47:08 +09:00
Dean Herbert
9e476ced63
Add EditorSidebar
component
2022-03-15 16:38:00 +09:00
Dean Herbert
68aedd63a7
Move SelectionHandler
's SelectedItems
binding to the base implementation
...
Until now it was up to each implementation to connect
`BlueprintContainer` to its `SelectionHandler`, which didn't make much
sense at all.
2022-03-10 23:22:19 +09:00
Bartłomiej Dach
e1eeb9c6bb
Allow tabbing between textboxes in sample point popover
2022-03-06 01:43:56 +01:00
Dean Herbert
f15b8781bb
Move editor mode selector out of EditorMenuBar
to allow for better reuse
2022-03-02 20:05:01 +09:00
Dean Herbert
2be40f36f7
Reword popup text to read better (or more vaguely)
...
Removed some words but also don't mention "smaller" because it's...
musically incorrect and also functionally incorrect – entering 1/[8]
will result in 1/16 also being populated for instance.
2022-02-28 15:26:50 +09:00
Dean Herbert
368eadd8d1
Remove unused using statement
2022-02-28 15:24:02 +09:00
Dean Herbert
3634e12e66
Automatically focus divisor textbox and hide popover after successful change
2022-02-28 15:23:01 +09:00
Bartłomiej Dach
7de5dad4f0
Add test coverage for divisor behaviour
2022-02-27 19:23:02 +01:00
Bartłomiej Dach
423838a649
Add flow for specifying entirely custom snaps
2022-02-27 17:55:20 +01:00
Bartłomiej Dach
d0c01afc2e
Add flow for changing set of valid divisors between presets
2022-02-27 15:37:51 +01:00
Bartłomiej Dach
36137e0619
Add simple carousel divisor type selector
2022-02-27 15:37:51 +01:00
Salman Ahmed
0992bec2c8
Change "distance spacing" multipler type to double
...
Avoids losing precision on initial load, causing an unnecessary
hash change in `EditorChangeHandler`.
Resolves test failures in `TestSceneEditorChangeStates`
(https://github.com/ppy/osu/runs/5192493482?check_suite_focus=true ).
2022-02-16 03:28:12 +03:00
Dean Herbert
954ae60b81
Merge branch 'master' into copy-existing-difficulty
2022-02-16 08:55:12 +09:00
Salman Ahmed
f5d0eb41cb
Update further ChangeFocus
usages
2022-02-15 02:42:39 +03:00
Salman Ahmed
528dc03b8c
Expose distance spacing in IPositionSnapProvider
for updating distance grid
...
Alternate method is to expose a `SnapDistancesChanged` event in
`IPositionSnapProvider` instead, but I chose this way as an analogue to
`IBeatSnapProvider.BeatDivisor`, which might even make sense to be
exposed as `BindableBeatDivisor` instead of caching that separately.
2022-02-15 02:21:53 +03:00
Bartłomiej Dach
e45a2ae0fc
Restructure difficulty copy flow to adapt to latest changes
2022-02-14 22:02:37 +01:00
Bartłomiej Dach
6221447164
Append copy suffix on creating copy of difficulty
2022-02-14 20:19:12 +01:00
Bartłomiej Dach
6fd663a718
Apply some renames to convey difference between creation options better
2022-02-13 14:01:23 +01:00
Bartłomiej Dach
a144d6f8d6
Fix beatmap skin properties not copying
2022-02-13 14:01:22 +01:00
Bartłomiej Dach
a2c2b2bbb3
Add flow for copying existing difficulty content
2022-02-13 14:01:20 +01:00
Salman Ahmed
6f0e32826c
Standardise ordering/grouping of IRulesetInfo
/RulesetInfo
s
2022-02-11 04:27:11 +03:00
Dean Herbert
ee1feae806
Remove unnecessary ruleset ordering
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-02-04 11:06:18 +09:00
Bartłomiej Dach
afc48d86df
Add failing test coverage for save after safeties addition
2022-02-02 21:57:10 +01:00
Bartłomiej Dach
4f1aac9345
Add safeties preventing creating multiple difficulties with same name
2022-02-02 21:57:09 +01:00
Bartłomiej Dach
0d51c015ad
Add basic test coverage for new difficulty creation
2022-02-02 21:55:34 +01:00
Bartłomiej Dach
dc96c4888b
Add support for creating new blank difficulties
2022-02-02 21:55:33 +01:00
Bartłomiej Dach
3386f038ba
Add new difficulty creation menu
2022-02-02 21:23:35 +01:00
Bartłomiej Dach
e2fcdc394b
Extract method for difficulty switch menu creation
2022-02-02 21:23:35 +01:00
Bartłomiej Dach
c6a65ccfed
Remove unused parameter from createContent()
...
No longer used since 513e470b52
.
2022-02-01 21:35:40 +01:00
Dean Herbert
b3856c9005
Fix editor crashing on custom rulesets due to ChangeHandler
not being supported
...
As per https://github.com/ppy/osu/discussions/16668 , even without proper
saving support some ruleset developers do want to work on the editor.
This brings things back into a workable state.
2022-01-28 14:03:31 +09:00
Dean Herbert
91be77ad3d
Fix null ref in ComposeScreen
when ruleset doesn't provide a composer
2022-01-28 14:01:10 +09:00
Dean Herbert
a5d422e82c
Merge branch 'master' into ruleset-id-fixes
2022-01-27 17:07:18 +09:00
Dean Herbert
5288eedd31
Update all usages of RulesetID
and Ruleset.ID
to use Ruleset.OnlineID
2022-01-27 15:38:03 +09:00
Bartłomiej Dach
d760283665
Ensure edited beatmap is restored to a baseline state on exit
2022-01-26 21:15:49 +01:00
Dean Herbert
bdf215c576
Merge branch 'master' into improve-timeline-zoom
2022-01-26 03:40:53 +09:00
Salman Ahmed
4169e5592e
Reword event handler name and update xmldoc
2022-01-25 19:36:19 +03:00
Salman Ahmed
d1cbdf63f0
Add support for reading/saving timeline zoom in editor
2022-01-25 18:57:39 +03:00
Salman Ahmed
f7f58b06a1
Fix beat divisor not saving in editor
2022-01-25 11:56:38 +03:00
Salman Ahmed
5a9524a74e
Decrease default timeline zoom to "6 seconds visible" range
2022-01-25 10:43:51 +03:00
Bartłomiej Dach
bd748686fa
Adjust spacing of time signature numerator input box
2022-01-23 15:21:32 +01:00
Salman Ahmed
e4758c9dbb
Mark LabelledTimeSignature
as public
2022-01-23 10:14:37 +03:00
Bartłomiej Dach
54f7b1b8d0
Use new time signature control on timing screen
2022-01-22 20:50:32 +01:00
Bartłomiej Dach
f39f2c93b5
Add control for arbitrary-numerator time signatures
2022-01-22 20:50:31 +01:00
Bartłomiej Dach
735414bc49
Replace TimeSignatures
enum with struct for storage of arbitrary meter
2022-01-22 20:50:31 +01:00
Dean Herbert
5f5765d6a2
Reduce redundancy time range to create a bit more visual blending on the timeline
2022-01-19 14:57:01 +09:00
Dean Herbert
03ac91a3ee
Consider all points in a group to meet redundancy check
2022-01-19 14:56:44 +09:00
Dean Herbert
93cd07f7fb
Merge branch 'master' into summary-timeline-control-point-optimisation
2022-01-19 14:50:45 +09:00
Dean Herbert
67bf95bc91
Remove all usage of AuthorString
2022-01-18 23:30:40 +09:00
Dean Herbert
d10d657073
Merge pull request #16421 from Susko3/textbox-AllowIme-false
...
Add `AllowIme => false` to text boxes where applicable
2022-01-18 18:02:47 +09:00
Dean Herbert
39c9c4985b
Merge branch 'master' into textbox-AllowIme-false
2022-01-18 17:03:51 +09:00
Dean Herbert
566d341b1e
Split conditions out for readability
2022-01-16 22:04:29 +09:00
Dean Herbert
565611ee00
Fix typo in inline comment
2022-01-15 23:57:20 +09:00
Dean Herbert
236fa6da7e
Rename ControlPointVisualisation
interface type to be less specific
2022-01-15 23:56:00 +09:00
Dean Herbert
c5cae4e3ee
Rename methods and add xmldoc
2022-01-15 23:55:11 +09:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps
2022-01-15 14:45:42 +01:00
Dean Herbert
64c499d9d6
Revert unintended temporary commenting (was used during benchmarking)
2022-01-15 15:24:30 +09:00
Susko3
19467e58c1
Remove unused params from BDL methods
2022-01-15 01:06:39 +01:00
Dean Herbert
c64a919a9d
Reduce number of redundant control points displayed on summary timeline
...
As pointed out in https://github.com/ppy/osu/discussions/16435 , beatmaps
with too many control points (usually added via external automation
apps) could cause the lazer editor to grind to a halt.
The overheads here are mostly from the GL side. An eventual goal would
be to render this in a smarter way, rather than using thousands of
drawables. Until that, this optimisation should help reduce the overhead
by omitting control points in close proximity that are redundant for
display purposes.
I've tried to contain this in the display logic directly, with the goal
that it can be ripped out as fast as it was added. Certainly required
more changes than I hoped for, but I don't think it's too ugly.
2022-01-14 17:13:26 +09:00
Dean Herbert
51251e3204
Fix CI reported warnings
2022-01-12 22:39:00 +09:00
Dean Herbert
7509a9ff8f
Update BeatmapModelManager.Save
to work for editor scenarios
2022-01-12 17:49:11 +09:00
Dean Herbert
3811bd8520
Fix some null inspections
2022-01-12 17:00:16 +09:00
Dean Herbert
a3276758b8
Remove unnecessary re-query of beatmap set in editor menu construction
2022-01-12 17:00:16 +09:00
Dean Herbert
b8cd3cdbbc
Various updates to ruleset and primary key usages to move closer to realm support
2022-01-12 16:57:13 +09:00
Dean Herbert
83cbee39de
Mark cases where BeatmapSet
is generally guaranteed to be non-null
2022-01-12 16:39:36 +09:00
Susko3
a0842838e7
Add AllowIme => false
where applicable
...
Also adds `AllowWordNavigation => false` to password text box.
2022-01-12 00:15:17 +01:00
Bartłomiej Dach
d76c674abc
Add tooltip with relative rotation in degrees to rotation handles
2022-01-08 20:24:15 +01:00
Bartłomiej Dach
24d377fddb
Move implementation of drag handle operations to concrete classes
2022-01-08 20:24:00 +01:00
Bartłomiej Dach
9370e84460
Fix effect point multiplier text box displaying too much decimal digits
2022-01-08 16:12:52 +01:00
Dean Herbert
6779503e57
Refactor logic to avoid TimelineSelectionHandler
having to block base calls
2022-01-05 16:56:54 +09:00
Dean Herbert
866ae3472b
Add global flip hotkeys
2022-01-05 16:48:07 +09:00
Dean Herbert
13cce50fa7
Remove existing handling of flip hotkeys
2022-01-05 16:30:42 +09:00
Joseph Madamba
7de43e3aba
Fix most open compound words in identifiers being closed
2021-12-27 20:26:28 -08:00
Joseph Madamba
98524d60a4
Fix clear identifier typos
2021-12-27 20:26:28 -08:00
Bartłomiej Dach
7ab1c0c99d
Improve contrast of timeline blueprint foreground content for pastel combo colours
2021-12-21 12:54:17 +01:00
Dan Balasescu
63a017bc8e
Use Array.Empty instead
2021-12-11 19:33:37 +09:00
Dean Herbert
c1b3ee6bb2
Fix editor not resetting mods when entering
...
Would leave the user potentially in a test mode that is in a weird
state (ie. if cinema mod was enabled). Eventually we'll add the ability
to choose mods for test play, but that will be done in a saner way.
Closes #15870 .
2021-12-10 18:57:45 +09:00
Bartłomiej Dach
10dd64e07c
Fix being able to paste objects while composer is loading
...
Would lead to exceptions due to modification of `Beatmap.HitObjects`
during its enumeration by `DrawableRuleset`, which was happening as an
async load via `EditorScreenWithTimeline.CreateMainContent()`.
2021-12-07 21:00:25 +01:00
Dean Herbert
1eed2436e6
Clean up unused resolved properties
2021-12-03 18:49:49 +09:00
Dean Herbert
a7e4e7be3a
Remove the ability to specify a filename in ReplaceFile
2021-11-29 18:11:51 +09:00
Dean Herbert
e2ebcf7a26
Remove unnecessary manager parameter
...
Confused why I added this in the first place..
2021-11-25 18:36:03 +09:00
Dean Herbert
cc1b91e4bd
Split out legacy model export logic into LegacyModelExporter
classes
2021-11-25 16:41:12 +09:00
Dean Herbert
0eea026afb
Remove null checks on CreateInstance()
calls
2021-11-24 12:23:09 +09:00
Dean Herbert
7599efac30
Update editor cases where repeat should not be handled
2021-11-18 13:13:36 +09:00
Dean Herbert
5471994450
Merge branch 'master' into sample-point-multiple
2021-11-15 14:13:58 +09:00
Bartłomiej Dach
6b4b6de554
Fix test gameplay starting in a hidden state
2021-11-13 22:11:00 +01:00
Bartłomiej Dach
2562412125
Propagate clock state from gameplay test back to editor
2021-11-13 22:11:00 +01:00
Bartłomiej Dach
d2ddc25ab3
Propagate clock state from editor to gameplay test
2021-11-13 22:10:59 +01:00
Bartłomiej Dach
9a19a516f9
Adjust spacings on sample point piece popover
2021-11-13 21:59:45 +01:00
Bartłomiej Dach
73ca1d39a2
Improve sample bank text box UX in case of multiple selection
2021-11-13 21:59:44 +01:00
Bartłomiej Dach
3fee6b0938
Add support for setting sample bank & volume for multiple objects at once
2021-11-13 21:24:59 +01:00
Bartłomiej Dach
9800cd4903
Add test coverage for sample control point piece operation
2021-11-13 18:14:50 +01:00
Dean Herbert
983d5a6cb8
Merge branch 'master' into difficulty-point-multiple
2021-11-13 23:47:12 +09:00
Bartłomiej Dach
5f2a789a6d
Ensure editor clock is stopped before testing gameplay
2021-11-13 14:01:00 +01:00
Bartłomiej Dach
eb8c5292d5
Ensure editor background is dimmed after return from gameplay test
2021-11-13 13:50:57 +01:00
Bartłomiej Dach
b47c0b63f4
Tweak loader transition when testing gameplay in editor
2021-11-13 13:39:18 +01:00
Bartłomiej Dach
a5ba3bd012
Move gameplay test pieces to own namespace
2021-11-13 13:39:17 +01:00
Bartłomiej Dach
e1c28ddd76
Adjust difficulty point popover content spacing
2021-11-12 23:32:12 +01:00
Bartłomiej Dach
d567d2be97
Fix multiple issues with textbox content display
...
- Sometimes would display too many decimal digits due to floating point
representation errors.
- Placeholder would also look wrong if text was removed during a
multiple (but determinate) selection.
2021-11-12 23:32:12 +01:00
Bartłomiej Dach
e55e2a1697
Allow to adjust slider velocity on multiple objects simultaneously
2021-11-12 23:32:11 +01:00
Bartłomiej Dach
7ba93aac27
Add test coverage for difficulty point piece operation
2021-11-12 22:16:09 +01:00
Dean Herbert
54ae307a3d
Trigger test via button click when using keyboard shortcut
2021-11-12 14:42:33 +09:00
Dean Herbert
e891c0ce53
Add keyboard shortcut to start test mode in editor
2021-11-12 14:13:11 +09:00
Dean Herbert
321aa456a7
Adjust button size slightly
2021-11-12 14:04:34 +09:00
Bartłomiej Dach
c465bcb821
Ensure track is stopped on player completion
2021-11-11 20:54:36 +01:00
Bartłomiej Dach
385df51b06
Ensure editor test player is exited on completion
2021-11-11 20:54:36 +01:00
Bartłomiej Dach
59727ce836
Add minimal implementation of gameplay testing from editor
2021-11-11 20:54:35 +01:00
Bartłomiej Dach
32b5a736c8
Add preview gameplay button to bottom editor bar
2021-11-11 17:12:21 +01:00
Dean Herbert
51a353e12d
Rename BeatmapInfo.Version
to DifficultyName
to match underlying interface
2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11
Rename BeatmapInfo.StarDifficulty
to StarRating
to match underlying interface
2021-11-11 17:19:46 +09:00
Bartłomiej Dach
b25ad8dfcb
Copy editor timestamp to OS clipboard even when triggered via menu bar
...
Would only work when triggered via Ctrl+C before, and not work at all
for Ctrl+X.
2021-11-10 12:49:10 +01:00
Bartłomiej Dach
5e31e890ae
Extract class for clipboard contents for DI purposes
2021-11-10 12:36:23 +01:00
Bartłomiej Dach
042b05a250
Move clipboard action availability logic down to editor screens
2021-11-09 19:54:37 +01:00
Bartłomiej Dach
286754f6f7
Move clipboard operation implementation down to current screen
2021-11-09 19:54:37 +01:00
Dean Herbert
ed07ee8c61
Update all existing usages of AuthorString
/AuthorId
...
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
09701d0af1
Use explicit primitive type specification
2021-11-04 16:02:37 +09:00
Dean Herbert
0f4f1349db
Merge branch 'master' into editor-context-menu-on-select
2021-11-04 15:59:06 +09:00
Bartłomiej Dach
11de924704
Use LocalisableString
s where possible to leverage localisable text flow
2021-11-02 21:42:02 +01:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Jason Won
c633e2e952
only propagate unmodified right click
2021-10-26 16:24:53 -04:00
Jason Won
f64fa65fd5
right click on unselected object shows context menu
2021-10-26 14:52:15 -04:00
Dean Herbert
c47497923a
Schedule drag events for now
2021-10-15 19:52:44 +09:00
Dean Herbert
30c3fcb4ea
Merge branch 'master' into slider-timeline-velcotiy-adjust-v2
2021-10-15 19:45:04 +09:00
Dean Herbert
3909fd8caa
Fix wonkiness when dragging slider end at high input refresh rates
2021-10-15 19:43:57 +09:00
Dean Herbert
874d722820
Merge branch 'master' into fix-editor-difficulty-name-update
2021-10-15 11:14:45 +09:00
Dean Herbert
ad0732484f
Just wait for metadata section to be loaded
2021-10-14 22:12:38 +09:00
smoogipoo
901f107b2e
Merge branch 'master' into slider-timeline-velcotiy-adjust-v2
2021-10-14 17:25:51 +09:00
Dan Balasescu
fb9c3fe72e
Merge pull request #14619 from peppy/no-more-difficulty-control-points-info
...
Move `DifficultyControlPoint`s to be specified at a per-`HitObject` level
2021-10-14 17:24:32 +09:00
Dean Herbert
09536cd733
Add logging of WorkingBeatmapCache.Invalidate
calls
2021-10-14 14:05:33 +09:00
Bartłomiej Dach
d067159435
Recolour elements of editor setup screen to match dropdown theming
2021-10-13 22:32:54 +02:00
Dean Herbert
02689a1b60
Use actual BeatmapInfo
rather than PlayableBeatmap.BeatmapInfo
for editor writes
2021-10-13 14:50:12 +09:00
smoogipoo
bc37cb6f43
Merge branch 'master' into no-more-difficulty-control-points-info
2021-10-08 18:41:17 +09:00
Dean Herbert
ef64c64f0b
Merge branch 'master' into popup-filter-effect
2021-10-07 18:56:07 +09:00
Dean Herbert
f98dd1b811
Merge branch 'master' into popup-filter-effect
2021-10-07 18:40:21 +09:00
Dean Herbert
0df409c050
Move difficulty copy to BeatmapModelManager.Save
2021-10-07 17:16:45 +09:00
Dean Herbert
4ca97bc60a
Merge branch 'master' into difficulty-move-to-beatmap
2021-10-06 16:14:21 +09:00
Dean Herbert
222997f2b9
Copy difficulty settings back out to BeatmapInfo
on editor changes
2021-10-06 15:19:26 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dean Herbert
d9849bcf49
Fix dragging on an editor file selection text box causing repeated popover display
...
Local fix and no tests as this is a pretty weird usage of `TextBox`.
We'll probably want to change it to not use a textbox eventually.
Closes #14969 .
2021-10-06 13:15:05 +09:00
Dean Herbert
ec61c3c5ee
Rename all remaining cases
2021-10-03 00:55:29 +09:00
Dean Herbert
ac471a0ec1
Merge branch 'no-more-difficulty-control-points-info' into slider-timeline-velcotiy-adjust-v2
2021-10-01 17:46:58 +09:00
Jamie Taylor
4d91204faf
Pause Editor
sample playback while popup dialog is shown
2021-09-29 20:46:41 +09:00
Dean Herbert
46bafb6252
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-28 13:53:56 +09:00
Bartłomiej Dach
ca6cbca04a
Fix range selection crashing after non-mouse selection
2021-09-27 20:54:29 +02:00
Dean Herbert
df85092426
Resolve inner items early in process and rename variable
2021-09-27 14:24:17 +09:00
Dean Herbert
41fb3371e5
Merge branch 'master' into blueprint-container-sorting
2021-09-27 14:12:09 +09:00
Bartłomiej Dach
d3203f83dd
Add implementation of range selection
2021-09-26 20:12:26 +02:00
Bartłomiej Dach
81d160c85a
Add test covering expected UX of range selection
2021-09-26 19:27:47 +02:00
Bartłomiej Dach
6dc3e66c93
Include combo information when determining ordering if available
2021-09-26 15:52:25 +02:00
Bartłomiej Dach
a86b9893ac
Always re-sort blueprints before adding/removing one
2021-09-26 15:48:56 +02:00