Dean Herbert
ba54551313
Merge branch 'master' into guard-url-protocols
2022-12-16 18:23:16 +09:00
Dean Herbert
27c497145f
Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0
2022-12-16 18:16:26 +09:00
cdwcgt
a4d28aff6d
fix typo
2022-12-16 10:48:56 +09:00
cdwcgt
79e27c2d9d
PreviewTimePart
will not show if preview time is -1
2022-12-16 10:44:07 +09:00
cdwcgt
f0246df1a9
only get;
2022-12-16 09:58:58 +09:00
cdwcgt
c164744064
Add ability to set preview time
2022-12-16 01:03:30 +09:00
Dean Herbert
b8904fe747
Move ImportParameters
to better home
2022-12-13 21:41:26 +09:00
Dean Herbert
cb16d62700
Hook up ImportParameter
flow with IModelImporter
caller methods
2022-12-13 21:29:32 +09:00
cdwcgt
e02b8cb199
Group export methods into their respective managers
2022-12-11 18:30:24 +09:00
cdwcgt
a1fc33668c
Merge branch 'master' into export
2022-12-09 23:40:26 +09:00
Dean Herbert
5a69656764
Merge pull request #21496 from peppy/fix-zero-length-spinners
...
Fix being able to place zero-length spinners
2022-12-02 19:25:00 +09:00
Dan Balasescu
850931120d
Merge pull request #21479 from peppy/fix-wrong-last-hit-object-time
...
Fix some components not accounting for final hold notes in osu!mania beatmaps
2022-12-02 18:12:00 +09:00
Dean Herbert
d1296a22ce
Update timeline blueprint's end time logic to better match new blueprint implementation
2022-12-02 17:57:15 +09:00
Dan Balasescu
a39bd634c4
Merge pull request #21405 from LumpBloom7/Editor-DrawableRuleset-Dependencies
...
Provide DrawableRulesetDependencies from HitObjectComposer
2022-12-02 17:31:31 +09:00
Dan Balasescu
d684aa75b8
Merge pull request #21477 from peppy/fix-mania-timeline-blueprint-colour
...
Fix osu!mania editor timeline showing bright-white blueprints
2022-12-02 16:55:29 +09:00
Dean Herbert
a2db0afe19
Avoid querying GetLastObjectTime
twice in editor seek flow
2022-12-02 16:07:24 +09:00
Dean Herbert
8cf89fcb81
Use Highlight1
instead of dull grey
2022-12-02 15:30:47 +09:00
Dean Herbert
896f2d8f74
Fix multiple instances of last hitobject time being calculated incorrectly
2022-12-01 18:04:06 +09:00
Dean Herbert
f34a79b1a9
Set a better default colour for timeline blueprints when no colour information is available
2022-12-01 17:03:53 +09:00
Dean Herbert
bbf023cf68
Fix incorrect culture used when parsing timeline popup textbox content
2022-12-01 16:12:29 +09: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
Dean Herbert
2a3b24d058
Avoid need for implicit null casting
2022-11-30 14:21:04 +09:00
Dean Herbert
0659c84341
Rename method to be more in line with project naming
2022-11-30 14:17:49 +09:00
Jai Sharma
7dbf379351
Don't use verbatim string literals
2022-11-29 18:22:07 +00:00
Derrick Timmermans
70c320b2e8
Provide ruleset dependencies only to Compose Placement Blueprints
2022-11-27 21:43:33 +01:00
Jai Sharma
218c04c174
Code quality
2022-11-27 03:23:08 +00:00
Jai Sharma
6000e14668
Correctly select issue row
2022-11-27 03:08:54 +00:00
Jai Sharma
3c56b9c93a
Add OnRowSelected
event to EditorTable
2022-11-27 02:47:54 +00:00
Jai Sharma
792334a190
Move Control Group timing data into it's own component
2022-11-27 02:47:02 +00:00
Jai Sharma
b6d7bec240
Remove #nullable disabled
from EditorTable
and it's derived classes
2022-11-27 02:45:56 +00:00
Jai Sharma
1a914d0df7
Remove #nullable disable
from TimingScreen
2022-11-27 02:43:22 +00:00
Bartłomiej Dach
894ef15e79
Merge branch 'master' into update-framework
2022-11-26 16:19:36 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Bartłomiej Dach
fca3e7e39f
Merge branch 'master' into editor-seek-control-points
2022-11-24 21:53:47 +01:00
Dean Herbert
37f725bfa2
Reverse directionality of up/down traversal keys to match scroll
2022-11-24 13:55:58 +09:00
Bartłomiej Dach
30f9cc46a7
Protect offset and bpm adjustments from null selection too
2022-11-23 17:25:43 +01:00
Dean Herbert
9b9b8a5977
Add ability to seek between control points in editor using down/up arrows
...
Matches stable. Addresses #21376 .
2022-11-23 15:59:32 +09:00
Dean Herbert
d146f86511
Fix crash when hitting 'T' to tap timing while no timing point is selected
2022-11-23 15:39:56 +09:00
cdwcgt
e37d30a373
refactor based on reviews
...
removed LegacyExportManager
Separated the method of CreateZip method and the default export method
2022-11-21 18:58:01 +09:00
Bartłomiej Dach
1269afd0c5
Merge pull request #21307 from frenzibyte/disable-scroll-speed-on-osu
...
Hide scroll speed control from effects section on rulesets which don't support it
2022-11-20 16:17:55 +01:00
Salman Ahmed
4b0ba86bd0
Identify scrolling rulesets using temporary DrawableRuleset
instances
2022-11-20 04:12:52 +03:00
Bartłomiej Dach
c05c1625f2
Merge branch 'master' into editor-test-play-dont-retain-test-time
2022-11-19 12:09:04 +01:00
Salman Ahmed
60c424837b
Merge branch 'master' into disable-scroll-speed-on-osu
2022-11-19 12:13:45 +03:00
Salman Ahmed
2e3af97892
Remove unused using
2022-11-19 12:13:36 +03:00
Salman Ahmed
290369db47
Hide scroll speed slider on rulesets which don't support it
2022-11-19 06:42:27 +03:00
Salman Ahmed
016de2f5a0
Fix editor not always playing hitsounds with clock offsets applied
2022-11-19 05:15:22 +03:00
cdwcgt
4e457871f3
impossible null and remove storage
2022-11-19 01:03:22 +09:00
cdwcgt
4b29941b47
add LegacyExportManager
2022-11-18 20:00:00 +09:00
Salman Ahmed
90cd386323
Fix timeline potentially scrolling at extents while not dragging
2022-11-18 09:43:16 +03:00
Dean Herbert
a4e713a61f
When returning to the editor after test play, use the original editor time rather than the point of exit
2022-11-17 12:36:24 +09:00
Dean Herbert
bfcd9e0f45
Don't seek to current editor location when location is close to (or before) the first object
2022-11-17 12:32:35 +09:00
Salman Ahmed
7a28a7f2a0
Move IGameplaySettings
override to compose screen to keep test mode unaffected
2022-11-17 01:45:16 +03:00
cdwcgt
e1a21e0cf9
create a task to export to avoid block main thread
...
Code quality and remove some #nullable disable
2022-11-17 01:08:06 +09:00
Dean Herbert
ee6fffec5f
Fix combo colour normalisation setting not applying to editor test play
2022-11-16 17:54:49 +09:00
Dan Balasescu
db25e9e9c8
Merge branch 'master' into combo-colour-brightness-limit
2022-11-11 15:31:28 +09:00
Dan Balasescu
94772a9cda
Merge pull request #21147 from peppy/fix-timeline-editor-crash
...
Fix editor hard crash when beatmap file specified out-of-range timeline zoom value
2022-11-10 22:59:55 +09:00
Dan Balasescu
606d42c679
Merge pull request #21184 from peppy/skinnable-things-cleanup
...
Skinnable class naming pass
2022-11-10 12:52:08 +09:00
Dan Balasescu
051f7f4c68
Merge pull request #21173 from peppy/toggle-hit-markers
...
Add the ability to toggle off hit marker displays in the editor
2022-11-10 12:23:53 +09:00
Dean Herbert
3547c04002
Merge branch 'master' into skinnable-things-cleanup
2022-11-10 12:09:32 +09:00
Dean Herbert
1aa0e40f2f
Add "Component" prefix to lookup naming
2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b
Rename ISkinComponent
to ISkinLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
4457648b1c
Fix editor playing too many sounds when user performs a manual seek during playback
2022-11-09 17:42:33 +09:00
Dean Herbert
4448fcb3c8
Override combo colour brightness normalisation setting only in editor
2022-11-08 18:29:10 +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
9650ae1329
Limit editor background dim to 75% maximum
2022-11-08 17:20:37 +09:00
Dean Herbert
349d262c18
Remove commented unbind
2022-11-08 17:19:48 +09:00
Dean Herbert
b166e477c2
Merge branch 'master' into editor-background
2022-11-08 17:18:34 +09:00
Dean Herbert
f6d93fcd5a
Fix editor hard crash when beatmap file specified out-of-range timeline zoom value
2022-11-07 12:54:02 +09:00
Dan Balasescu
fc191807c6
Fix velocity test failing with no audio device
2022-11-03 13:59:22 +09:00
Dean Herbert
0e502de8b4
Rename field to match usage
2022-11-02 18:04:42 +09:00
Dean Herbert
c3eb0c6330
Merge branch 'master' into editor-background
2022-11-02 17:43:38 +09:00
cdwcgt
9884618290
rename editorDim
to editorBackgroundDim
2022-11-02 15:12:15 +09:00
Dean Herbert
2a88409dfe
Fix time snap of sliders not matching when SV is not 1.0x
...
This regressed with https://github.com/ppy/osu/pull/20850 because the
function was used in other places which expect it to factor slider
velocity into the equation.
Rather than reverting, I've added a new argument, as based on the method
naming alone it was hard to discern whether SV should actually be
considered.
The reason for the change in #20850 was to avoid the SV coming in from a
reference object which may not have a correct SV in the first place. In
such cases, passing `false` to the function will give the expected
behaviour.
2022-11-01 15:12:58 +09:00
andy840119
a753369d3e
Reuse function TimeAtPosition()
and PositionAtTime()
.
2022-10-30 17:21:50 +08:00
D.Headley
21d68bfb84
Delete unused button
2022-10-28 16:40:21 +02:00
cdwcgt
6991195d69
let editor dim different from gameplay dim
2022-10-26 15:22:57 +09:00
Dean Herbert
2016d33055
Offset start of distance snap grid drawing if reference object's start time doesn't align
...
Closes #20938 .
2022-10-26 13:11:26 +09:00
Bartłomiej Dach
f5ca447b8e
Rename one more "{duplicate -> clone}" reference
2022-10-25 21:34:41 +02:00
Bartłomiej Dach
bcdf24b972
Merge branch 'master' into add-editor-object-clone
2022-10-25 21:33:52 +02:00
Dean Herbert
4d4f6e25ba
Rename to "clone" instead of "duplicate"
2022-10-25 11:43:23 +09:00
Dean Herbert
1e579e06f8
Fix duplicate working incorrectly if there is no selection currently made
2022-10-25 11:42:12 +09:00
cdwcgt
a2682b3ce3
background dim settings for editor
...
View -> Background Dim
follow `DimLevel` and `BlurLevel`
Co-Authored-By: Dead_Bush_Sanpai <DeadBushSanpai@yandex.com>
2022-10-24 23:55:33 +09:00
cdwcgt
de881cc5cb
useless #nullable disable
2022-10-24 23:17:28 +09:00
Dean Herbert
1d5df15027
Add ability to use Shift
+Number
to set current beat divisor in editor
2022-10-24 15:20:15 +09:00
Dean Herbert
e72a71a28e
Add simple editor "duplicate objects" key binding
2022-10-24 14:01:34 +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
Dean Herbert
9222cb379f
Add sample bank suport to editor selection handler
2022-10-19 20:53:18 +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
Dan Balasescu
10aabfc650
Merge pull request #20739 from peppy/settings-toolbox
...
Adjust visuals of settings toolboxes (gameplay loading screen and editor)
2022-10-14 20:31:05 +09:00
Dean Herbert
15f9697c9f
Roughly update design of editor buttons
2022-10-13 16:57:25 +09:00
Dean Herbert
c3902728f6
Reorganise beatmap snap control to work better in compact mode
2022-10-13 15:47:54 +09:00
Dean Herbert
a525b3f9f8
Reorder and rename toggle checkboxes to fit better
2022-10-13 15:44:33 +09:00
Dean Herbert
f6f5d33f53
Add slight padding to playfield (roughly matches stable)
2022-10-13 15:44:23 +09:00
Dean Herbert
ab24e87013
Merge branch 'master' into improve-drag-selection
2022-10-12 13:20:17 +09:00
ekrctb
fcb9e2cc00
Refactor blueprint container drag code
2022-10-11 22:39:53 +09:00
Dean Herbert
f41b79688f
Avoid casting by accepting all Playfield
s but throwing on a bad choice
2022-10-11 16:54:41 +09:00
ekrctb
6ab29a62d0
Anchor drag box on time (catch, mania)
...
Not done for taiko because I cannot figure out how it should work with the overlapping scroll algorithm.
2022-10-11 14:23:17 +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
6164e0896a
Don't reselect already selected items in SelectAll
2022-10-07 10:46:07 +09:00
ekrctb
29cc554632
Ensure blueprint is added for selected hit object
2022-10-06 13:59:54 +09:00
ekrctb
0d448e6cc8
Fix items without blueprints are not deselected
2022-10-06 13:50:56 +09:00
ekrctb
b0213c29e9
Use mid time instead of start time
...
It is closer to the old blueprint-based behavior
2022-10-05 22:19:22 +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
ekrctb
3108c42ece
Fix inspect issues
2022-10-05 22:04:43 +09:00
ekrctb
00b3d97f69
Improve timeline selection performance
...
But selecting a large number of hit objects is still very slow
because all DHOs must be added
and also `AddBlueprintFor` has quadratic behaviors
2022-10-05 21:58:05 +09:00
ekrctb
0613388aaa
Make sure all selected items get deleted
2022-10-05 21:58:05 +09:00
ekrctb
0ffde02f79
Use hit object time for timeline selection
2022-10-05 21:51:01 +09:00
ekrctb
8d29e9e76b
Move selection logic from DragBox to BlueprintContainer
2022-10-05 21:51:01 +09:00
Dean Herbert
58217b6839
Fix weird conditional
2022-09-27 20:09:21 +09:00
Dean Herbert
a9088d9231
Add assert/log output when too many ticks are being displayed
2022-09-27 17:18:46 +09:00
Dean Herbert
e227519b09
Don't attempt to render timeline ticks until DrawWidth
is above zero
2022-09-27 17:18:46 +09:00
Dean Herbert
ccae721af2
Ensure ZoomableScrollContainer
content isn't shown until zoom is set
2022-09-27 17:07:11 +09:00
Dean Herbert
9dc0eb7fd0
Remove unused static
2022-09-27 17:04:56 +09:00
Drison64
c075d3de08
Create a test and a check if initial zoom value of ZoomableScrollContainer is in range
2022-09-17 22:43:40 +02:00
Ondřej Vajďák
9d94343317
Update osu.Game/Screens/Edit/Compose/Components/Timeline/Timeline.cs
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-09-17 19:51:44 +02:00
Drison64
c8768eb399
Changed == to <= on TimelineZoom check
2022-09-17 19:00:50 +02:00
Drison64
3c7ea5c8fa
Update
2022-09-17 18:57:09 +02:00
Drison64
0b6a77bc8b
EditorBeatmap's TimelineZoom should never be zero
2022-09-17 15:59:42 +02:00
Dean Herbert
f53507828c
Rename event to be more generic (and add comprehensive xmldoc)
2022-09-13 14:59:30 +09:00
OliBomby
fd48249eef
fix with new event
2022-09-13 02:20:52 +02:00
OliBomby
718f8c4ee2
revert the fix
2022-09-13 01:09:42 +02:00
OliBomby
8400de4b2e
invoking hitobject updated before invoking removed
2022-09-12 17:50:11 +02:00
Salman Ahmed
90207b6032
Merge branch 'master' into feature/EditorDeleteDiff
2022-09-06 18:48:06 +03:00
Dean Herbert
db15bd56e8
Invalidate working beatmap cache when calling DeleteDifficultyImmediately
rather than in editor code
2022-09-06 18:12:47 +09:00
Dean Herbert
57954bb8f5
Enable nullability on TimelineHitObjectBlueprint
2022-09-05 14:50:43 +09:00
Dean Herbert
4f18105e9d
Ensure next beatmap selected matches the menu ordering
2022-09-02 17:57:00 +09:00
Dean Herbert
840d1c4cd5
Disable delete difficulty menu item when only one difficulty is present
2022-09-02 17:14:48 +09:00
Dean Herbert
9fd8067e11
Tidy up dialog and deletion flow
2022-09-02 17:07:09 +09:00
Dean Herbert
605108c938
Refactor/rename deletion method to read better
2022-09-02 16:59:01 +09:00
Dean Herbert
b388428e1c
Merge branch 'master' into feature/EditorDeleteDiff
2022-09-02 16:48:38 +09:00
Dean Herbert
6a35b233e5
Merge branch 'master' into remove-dispose-updates
2022-09-01 23:03:19 +09:00
Dean Herbert
cfc7c32aff
Merge pull request #20009 from frenzibyte/fix-back-to-front-comparison
...
Adjust weirdly back-to-front fallback comparison in `HitObjectOrderedSelectionContainer`
2022-08-31 14:14:10 +09:00
Dean Herbert
2dafa041a7
Account for offset being applied to editor clock time in TestSceneEditorClock
2022-08-29 16:42:50 +09:00
Dean Herbert
a215d009fe
Update Remove
/RemoveRange
/RemoveAll
calls in line with framework changes
2022-08-29 15:57:40 +09:00
Salman Ahmed
3ff2058975
Fix back-to-front fallback comparison in HitObjectOrderedSelectionContainer
2022-08-29 09:23:53 +03:00
Dean Herbert
cd90536e4b
Remove Track
access in Timeline
2022-08-26 18:25:48 +09:00
Dean Herbert
12d6d6793c
Move EditorClock
processing to Update
and always decouple
2022-08-26 18:08:43 +09:00
Dean Herbert
31e459364b
Use FramedBeatmapClock
in EditorClock
2022-08-26 17:28:58 +09:00
Dean Herbert
ec61a94dc9
Merge branch 'master' into no-gameplay-clock-gameplay-offset
2022-08-23 17:36:06 +09:00
Dean Herbert
af2e82d7d5
Move operation of setting GameplayClockContainer.StartTime
to Reset
call
2022-08-22 14:11:06 +09:00
Dean Herbert
cbdd870ecf
Merge pull request #19693 from its5Q/editor-localisation
...
Add localisation support for beatmap editor setup
2022-08-20 11:51:57 +09:00
its5Q
4c24d8ed58
Improve string consistency
2022-08-19 03:17:05 +10:00
Dan Balasescu
0cf3c5570a
Merge pull request #19800 from peppy/fix-editor-ear-rape
...
Fix slider ticks playing back at infinite rate while making changes to a slider in the editor
2022-08-17 15:50:58 +09:00
Dean Herbert
6b9dec5996
Restore original event flow to allow for OnSuspend
case to work correctly
2022-08-17 14:32:21 +09:00
Dean Herbert
8ce50e98a6
Move delegate debounce logic to Editor
itself
2022-08-17 14:04:57 +09:00
Dean Herbert
ee153a345c
Add a few more overlooked beatmap save states on setup screen modifications
2022-08-16 16:31:56 +09:00
Dean Herbert
ea50936d71
Fix slider ticks playing back at infinite rate while making changes to a slider in the editor
2022-08-16 15:27:58 +09:00
its5Q
e870ac6456
Fix code quality for CI
2022-08-16 15:51:54 +10:00
its5Q
797a8da996
Replace osu-web strings with new strings and merge to single file
2022-08-16 01:14:16 +10:00
Bartłomiej Dach
05ddfe7522
Merge branch 'master' into editor-setup-no-state-change
2022-08-14 18:21:31 +02:00
its5Q
2499b7f0cd
Add localisation support for beatmap editor setup
2022-08-11 03:53:20 +10:00
Dean Herbert
ac99c1ad69
Migrate the majority of existing file lookups to use new extension methods
2022-08-10 16:01:16 +09:00
Dan Balasescu
c4b9b2a14b
Merge branch 'master' into irenderer-glwrapper
2022-08-05 20:35:06 +09:00
Dean Herbert
de186f67e0
Limit metadata updates to once per frame
2022-08-02 22:02:30 +09:00
Dan Balasescu
b4e55f7309
Apply IRenderer changes
2022-08-02 19:50:57 +09:00
Dean Herbert
cc4cde2c79
Improve IBeatSyncProvider
interface and reduce beatmap track dependence
2022-08-02 17:59:18 +09:00
Dean Herbert
efa3c3b757
Fix multiple cases of mutations at editor setup screen not triggering a state save
2022-08-02 16:47:37 +09:00
Dean Herbert
6e7c298aaf
Fix changes to audio / background not triggering an editor state change
2022-08-01 16:53:49 +09:00
Dean Herbert
2f60f91a0e
Fix editor potentially using a track post-disposal
...
This changes the editor to track the current track as it is *loaded* by
`MusicController`, rather than haphazardly following the current global
`WorkingBeatmap` (with a potentially unloaded track) or relying on local
immediate-load behaviour (as implemented in `ResourcesSection`).
2022-08-01 16:53:49 +09:00
Dean Herbert
acf9ad1429
Apply nullability to EffectPointVisualisation
2022-07-29 23:26:38 +09:00
Dean Herbert
8f1e3b0154
Fix editor summary timeline not responding to kiai changes correctly
2022-07-29 19:31:49 +09:00
Micahel Kelly
dd315ff97b
Adds hard-delete for a beatmap diff
2022-07-27 21:21:16 +10:00
Micahel Kelly
3febd6d644
Dialogue touchups
2022-07-27 19:23:55 +10:00
Micahel Kelly
e6fad601cc
Adds delete difficulty option to editor
2022-07-27 19:15:43 +10:00
Dan Balasescu
1b2158ff04
Remove unused method
2022-07-26 14:15:59 +09:00
Salman Ahmed
48bcf57066
Mark SetupZoom
and parameterless ZoomableScrollContainer
ctor as protected
2022-07-25 12:07:50 +03:00
Salman Ahmed
07c6b44864
Fix Timeline
attempting to setup zoom with unloaded track
2022-07-25 12:07:50 +03:00
Salman Ahmed
123930306b
Refactor ZoomableScrollContainer
to allow setting up zoom range and initial zoom after load
2022-07-25 12:07:50 +03:00
Dan Balasescu
e1df50c8ff
Fix timeline zoom focus point when using buttons
2022-07-22 17:03:05 +09:00
Dean Herbert
72916d708c
Merge pull request #19294 from peppy/fix-timeline-feedback-loop
...
Fix timeline `alt`+`scroll` zoom not correctly zooming to current mouse position
2022-07-22 16:05:38 +09:00
Dean Herbert
1774a96455
Merge pull request #19278 from Cwazywierdo/timeline-relative-zoom
...
Make editor timeline zoom relative to song length
2022-07-22 15:37:47 +09:00
Dean Herbert
6eb42d08ce
Fix timeline zoom receiving feedback from bindable changes
...
This causes the focal point zooming to not work (as the focal point is
lost). There's no need to handle ongoing changes to
`BeatmapInfo.TimelineZoom` because it is not a property which is changed
at runtime.
2022-07-22 15:25:57 +09:00
Dean Herbert
4cec9a085a
Combine both calls to use same pathway
2022-07-22 14:59:20 +09:00
Dean Herbert
f713253d1b
Fix formatting inconsistencies in empty ctor
s
2022-07-22 14:00:29 +09:00
LukynkaCZE
ed94d7fce8
Fix requested changes
2022-07-22 02:46:17 +02:00
Adam Baker
997fe00cdc
Fix zoom delta math
2022-07-21 17:29:13 -05:00
Adam Baker
d69dc457ba
Extract zoom delta method
2022-07-21 17:28:43 -05:00
Adam Baker
a4f071fe53
Make zoom sensitivity relative to containers max zoom
2022-07-21 08:26:48 -05:00
LukynkaCZE
5987acfbca
Fixed code formatting
2022-07-19 22:59:25 +02:00
LukynkaCZE
a00da279b7
Beatmap Editor Save Toast
2022-07-19 21:38:23 +02:00
Dean Herbert
7ac04d0478
Fix potential crash when exiting editor test mode
2022-07-14 01:00:18 +09:00
Dean Herbert
952d97c66e
Update comment regarding LoadTrack
safety
2022-07-13 19:02:22 +09:00
Joseph Madamba
834bb1f187
Fix editor playing object samples while paused after cancelling exit
2022-07-09 12:14:39 -07:00
Dean Herbert
98938821e5
Merge branch 'master' into beatmap-update-flow
2022-06-30 16:44:17 +09:00
Dean Herbert
569fde4b47
Add messages to all InvalidOperationException
s
...
Without this, they can be very non-descript and hard to track down
2022-06-28 01:34:25 +09:00
Dean Herbert
0ba29b6fa6
Use currentScreen
instead to make sure the screen we care about is loaded
2022-06-27 18:28:00 +09:00
Dean Herbert
5a7d339cc8
Centralise and harden editor-ready-for-use check
...
Not only does this combine the check into one location, but it also adds
a check on the global `WorkingBeatmap` being updated, which is the only
way I can see the following failure happening:
```csharp
05:19:07 osu.Game.Tests: osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.TestAddAudioTrack
05:19:07 Failed TestAddAudioTrack [161 ms]
05:19:07 Error Message:
05:19:07 TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
05:19:07 Stack Trace:
05:19:07 --TearDown
05:19:07 at osu.Game.Database.ModelManager`1.<>c__DisplayClass7_0.<AddFile>b__0(TModel managed) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07 at osu.Game.Database.ModelManager`1.<>c__DisplayClass8_0.<performFileOperation>b__0(Realm realm) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 49
05:19:07 at osu.Game.Database.RealmExtensions.Write(Realm realm, Action`1 function) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\RealmExtensions.cs:line 14
05:19:07 at osu.Game.Database.ModelManager`1.performFileOperation(TModel item, Action`1 operation) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 46
05:19:07 at osu.Game.Database.ModelManager`1.AddFile(TModel item, Stream contents, String filename) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07 at osu.Game.Screens.Edit.Setup.ResourcesSection.ChangeAudioTrack(FileInfo source) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Screens\Edit\Setup\ResourcesSection.cs:line 115
05:19:07 at osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.<TestAddAudioTrack>b__13_0() in C:\BuildAgent\work\ecd860037212ac52\osu.Game.Tests\Visual\Editing\TestSceneEditorBeatmapCreation.cs:line 101
05:19:07 at osu.Framework.Testing.Drawables.Steps.AssertButton.checkAssert()
05:19:07 at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
05:19:07 at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
```
2022-06-27 16:22:01 +09:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dean Herbert
7692bac35a
Simplify refetch (and ensure to invalidate after processing)
2022-06-24 21:02:38 +09:00
Dean Herbert
f71f6302fd
Remove unnecessary null
casts
2022-06-24 14:50:11 +09:00
Dean Herbert
ef258122d2
Move GetDifficultyRating
helper method to StarDifficulty
2022-06-23 19:51:58 +09:00
Dean Herbert
97fcf8cec9
Merge pull request #18668 from smoogipoo/editor-controlpoint-undo-redo
2022-06-23 04:02:24 +09:00
Jamie Taylor
950551f4fd
Fix metronome arm being stuck white when paused 'close enough' to center
2022-06-22 15:33:42 +09:00
Dean Herbert
b7b7de115f
Merge pull request #18744 from nekodex/new-metronome-sfx
...
New audio feedback for metronome
2022-06-21 17:16:41 +09:00
Dean Herbert
7d988da2c7
Merge pull request #18788 from peppy/editor-seek-constant-while-playing
...
Change editor seek-while-playing modifier to be BPM agnostic
2022-06-21 15:28:46 +09:00
Dean Herbert
a40ad6f784
Add slight transform when resetting arm from almost-zero
2022-06-21 15:07:35 +09:00
Dean Herbert
82c4d855d4
Rename sample variable to be easier to discern from other fields
2022-06-21 15:05:17 +09:00
Dean Herbert
16a9e18815
Adjust timing of latch to be more in sync with visuals
2022-06-21 15:02:53 +09:00
Dean Herbert
7b46d38318
Move colour fade back to where it was
2022-06-21 15:02:43 +09:00
Dean Herbert
3b79c632f5
Merge branch 'master' into new-metronome-sfx
2022-06-21 14:58:58 +09:00
Dean Herbert
42701757c3
Fix latch reset logic
2022-06-21 14:52:57 +09:00
Dean Herbert
72c0fc3fec
Merge pull request #18753 from frenzibyte/prevent-mistimed-metronome-beats
...
Fix metronome playing mistimed beat sounds on editor clock resume
2022-06-21 13:48:42 +09:00
Dean Herbert
c61e90d768
Change editor seek-while-playing modifier to be BPM agnostic
2022-06-21 13:07:50 +09:00
Dan Balasescu
046b848bcd
Split group selection to separate method
2022-06-21 12:53:06 +09:00
Dan Balasescu
93ce6fc981
Remove redundant diff processing
2022-06-21 12:11:44 +09:00
Dan Balasescu
9763a58392
Change to use ReferenceEquals
2022-06-21 12:05:52 +09:00
Dan Balasescu
e0c82d11ab
Convert == usages to ReferenceEquals
2022-06-20 16:56:19 +09:00
Dan Balasescu
ca287d0936
Fix group deselected when table is recreated
2022-06-20 16:56:19 +09:00
Dan Balasescu
a922ea9b01
Fix selection by directly comparing control points
...
Previously, all control points would get replaced, which led to
performance issues that was worked around in this PR. By comparing
control points, we're able to get good performance without requiring the
workaround.
2022-06-20 15:29:29 +09:00
Dan Balasescu
468e5fcbed
Merge branch 'master' into editor-controlpoint-undo-redo
2022-06-20 13:47:01 +09:00
Bartłomiej Dach
3ab8158b92
Do not try to set ruleset from beatmap if it's a dummy
2022-06-19 20:08:39 +02:00
Bartłomiej Dach
93b3ede2a0
Always use beatmap ruleset in editor gameplay test mode
...
Fixes cases where opening a convertible beatmap (so any osu! beatmap)
with the game-global ruleset being set to anything but osu! would result
in opening the editor gameplay test mode with the game-global ruleset
rather than the beatmap's.
2022-06-19 19:30:40 +02:00
Salman Ahmed
a2e17941e5
Merge branch 'master' into timing-offset-adjust-seek-only-at-start
2022-06-19 01:27:44 +03:00
Dean Herbert
3902dc64f0
Fix adjusting offset via button seeking to timing point's offset unexpectedly
...
This was added with the intention of tracking the offset when already at
the start (the most common case when you're using the tap timing
wizard), but was also seeking when the user may be much further beyond
or before it.
Addresses https://github.com/ppy/osu/discussions/18741#discussioncomment-2975051 .
2022-06-19 01:35:45 +09:00
Salman Ahmed
a5e5172b91
Fix BlueprintContainer
eating input from skin editor buttons
2022-06-18 18:28:36 +03:00
Bartłomiej Dach
f6a3047596
Merge branch 'master' into editor-metadata-name-unification
2022-06-18 10:22:52 +02:00
Salman Ahmed
204348f327
Fix metronome playing mistimed beat sounds on editor clock resume
2022-06-18 04:49:44 +03:00
Salman Ahmed
8a1d11fefb
Cancel previous metronome sound playback on pause
2022-06-18 04:07:21 +03:00
Jamie Taylor
1f78a4fadd
New audio feedback for metronome
2022-06-17 16:56:09 +09:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Bartłomiej Dach
6ff6a3f5b3
Rename and document chooserPath
2022-06-16 21:51:31 +02:00
Salman Ahmed
db02cb81c5
Fix file chooser path not opening home directory initially
2022-06-16 20:48:17 +03:00
Salman Ahmed
47d0ecf5e8
Merge branch 'master' into editor-metadata-name-unification
2022-06-16 18:53:23 +03:00
Salman Ahmed
6aee689586
Fix previous file lookup not using metadata properties
2022-06-16 18:50:38 +03:00
Salman Ahmed
f1081db953
Fix background/track implicitly renamed on initial load
2022-06-16 18:48:32 +03:00
Salman Ahmed
2c35b1404b
Use FileInfo
as current bindable type
2022-06-15 19:29:09 +03:00
Salman Ahmed
1ff070f5ff
Decouple LabelledFileChooser
from LabelledTextBoxWithPopover
2022-06-15 17:45:31 +03:00
Dean Herbert
7571ab6c63
Merge branch 'master' into new-dialog-sfx
2022-06-15 19:47:00 +09:00
Dean Herbert
c27e5d1216
Fix editor still playing back sound when exiting with confirmation
2022-06-15 18:44:02 +09:00
Dean Herbert
713cff3403
Don't play editor exit sound when changing difficulties
2022-06-15 17:49:09 +09:00
Dean Herbert
fd4529aa7c
Play editor exit sound if no confirmation buttons were shown during exit process
2022-06-15 17:37:54 +09:00
Dean Herbert
6136e4e27a
Don't play exit sound if screen is in a non-resumable state when exiting
2022-06-15 17:37:25 +09:00
Dean Herbert
87bf53485a
Merge pull request #18649 from frenzibyte/selection-context-outside-bounds
...
Fix context menus not appearing when clicking outside of editor playfield's bounds
2022-06-15 17:08:09 +09:00
Salman Ahmed
6a8cf514e0
Update background/track file chooser to not display filename
2022-06-15 09:52:13 +03:00
Jamie Taylor
5e3ccf7087
Don't play 'back' sample when exiting Editor
2022-06-15 15:41:28 +09:00
Salman Ahmed
f3f0960335
Use unified filename for background and track during editor import
2022-06-15 09:02:48 +03:00
Salman Ahmed
d3feb07bc1
Split zoom updating to named method with value as optional
2022-06-15 07:57:16 +03:00
Salman Ahmed
268a7e1334
Fix ZoomableScrollContainer
attempting to update zoom with overlapping range
2022-06-15 05:43:41 +03:00
Dan Balasescu
cc7943dfb1
Merge pull request #18687 from peppy/editor-repeat-behaviour-change-collapsing
...
Fix timing adjustment repeat buttons firing one change per repeat invocation
2022-06-14 20:24:13 +09:00
Dean Herbert
c30644328c
Fix timing adjustment repeat buttons firing one change per repeat invocation
2022-06-14 19:21:02 +09:00
Dean Herbert
aeca138930
Fix ctrl-z in editor also seeking to start in addition to undo
2022-06-14 18:48:57 +09:00
Salman Ahmed
fa4930c586
Remove no longer necessary ReceivePositionalInputAt
overrides in timeline components
2022-06-14 00:19:47 +03:00
Salman Ahmed
c49b8e4a5c
Allow BlueprintContainer
and SelectionHandler
to receive input outside bounds
2022-06-14 00:19:15 +03:00
Salman Ahmed
9fc04924eb
Revert "Provide context menu items at BlueprintContainer
for out-of-bounds support"
...
This reverts commit 85fc218edf
.
2022-06-14 00:02:02 +03:00
Dan Balasescu
f680f4d26b
Apply refactorings from review
2022-06-13 17:36:32 +09:00
Dan Balasescu
c178e5d592
Add explanatory comment
2022-06-13 16:58:43 +09:00
Dan Balasescu
a8286bdf04
Fix assertion failures
2022-06-13 16:56:08 +09:00
Dan Balasescu
285e5abb41
Fix incorrect fallback value
2022-06-13 16:55:46 +09:00
Dan Balasescu
5a18547342
Compare by char
...
Co-authored-by: Berkan Diler <berkan.diler1@ingka.ikea.com>
2022-06-13 15:58:11 +09:00
Dan Balasescu
776e7c0c71
Work around performance issues
2022-06-13 15:45:08 +09:00
Dan Balasescu
7e7716f942
Support undo/redo for control points
2022-06-13 15:45:08 +09:00
Salman Ahmed
85fc218edf
Provide context menu items at BlueprintContainer
for out-of-bounds support
2022-06-11 20:53:53 +03:00
Dean Herbert
cd0e0fe70f
Fix skin editor not accounting for aspect ratios in base-game sizing logic
2022-06-06 18:02:42 +09:00
Dan Balasescu
b897e1464f
Merge pull request #18462 from frenzibyte/fix-timeline-zooming
...
Fix timeline objects disappearing prematurely on wide-screens
2022-06-05 11:49:44 +09:00
Dan Balasescu
fcf51a6f51
Merge pull request #18530 from peppy/add-cloen-button
...
Change text on timing group add button when it is going to clone instead
2022-06-03 22:23:04 +09:00
Dean Herbert
debd1a59b0
Merge pull request #18539 from frenzibyte/repeating-button-behaviour
...
Share repeat implementation in `TimingAdjustButton` for timeline zoom buttons
2022-06-03 18:18:23 +09:00
Dan Balasescu
1c738e22ae
Merge pull request #18523 from peppy/tap-button
...
Add tap for BPM button
2022-06-03 18:11:10 +09:00
Dean Herbert
cd3edc869c
Remove unnecessary nesting of IconButton
and update design a touch
2022-06-03 17:00:00 +09:00
Dean Herbert
e779b460e4
Use Component
instead of CompositeDrawable
2022-06-03 16:49:08 +09:00
Dean Herbert
678229fdab
Merge pull request #18536 from bdach/safe-file-chooser-textbox-disposal
...
Improve safety of file chooser textbox disposal
2022-06-03 13:50:41 +09:00
Dan Balasescu
dd93fc283b
Merge pull request #18531 from peppy/track-groups-better
...
Improve group tracking logic to avoid switching which point type unnecessarily
2022-06-03 13:04:54 +09:00
Salman Ahmed
b51e0a5047
Share button repeating logic with TimelineButton
for better UX
2022-06-03 05:23:49 +03:00
Salman Ahmed
efbde06c11
Split button repeating logic from TimingAdjustButton
to own component
2022-06-03 05:23:49 +03:00
Salman Ahmed
21385655fe
Fix ZoomableScrollContainer
not updating on parent size changes
2022-06-03 02:34:10 +03:00
Salman Ahmed
60fb5d5e6c
Revert "Fix timeline objects disappearing prematurely on wide-screens"
...
This reverts commit 02baf9a97a
.
2022-06-03 02:03:04 +03:00
Salman Ahmed
8471b24659
Merge branch 'master' into fix-timeline-zooming
2022-06-03 02:00:09 +03:00
Bartłomiej Dach
87ec2e490d
Merge branch 'master' into deselect-control-group
2022-06-03 00:47:06 +02:00
Bartłomiej Dach
cf9b78ea2a
Improve safety of FileChooserLabelledTextBox
disposal
2022-06-02 20:38:14 +02:00
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