Commit Graph

2133 Commits

Author SHA1 Message Date
cc4cde2c79 Improve IBeatSyncProvider interface and reduce beatmap track dependence 2022-08-02 17:59:18 +09:00
6e7c298aaf Fix changes to audio / background not triggering an editor state change 2022-08-01 16:53:49 +09:00
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
acf9ad1429 Apply nullability to EffectPointVisualisation 2022-07-29 23:26:38 +09:00
8f1e3b0154 Fix editor summary timeline not responding to kiai changes correctly 2022-07-29 19:31:49 +09:00
1b2158ff04 Remove unused method 2022-07-26 14:15:59 +09:00
48bcf57066 Mark SetupZoom and parameterless ZoomableScrollContainer ctor as protected 2022-07-25 12:07:50 +03:00
07c6b44864 Fix Timeline attempting to setup zoom with unloaded track 2022-07-25 12:07:50 +03:00
123930306b Refactor ZoomableScrollContainer to allow setting up zoom range and initial zoom after load 2022-07-25 12:07:50 +03:00
e1df50c8ff Fix timeline zoom focus point when using buttons 2022-07-22 17:03:05 +09:00
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
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
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
4cec9a085a Combine both calls to use same pathway 2022-07-22 14:59:20 +09:00
f713253d1b Fix formatting inconsistencies in empty ctors 2022-07-22 14:00:29 +09:00
ed94d7fce8 Fix requested changes 2022-07-22 02:46:17 +02:00
997fe00cdc Fix zoom delta math 2022-07-21 17:29:13 -05:00
d69dc457ba Extract zoom delta method 2022-07-21 17:28:43 -05:00
a4f071fe53 Make zoom sensitivity relative to containers max zoom 2022-07-21 08:26:48 -05:00
5987acfbca Fixed code formatting 2022-07-19 22:59:25 +02:00
a00da279b7 Beatmap Editor Save Toast 2022-07-19 21:38:23 +02:00
7ac04d0478 Fix potential crash when exiting editor test mode 2022-07-14 01:00:18 +09:00
952d97c66e Update comment regarding LoadTrack safety 2022-07-13 19:02:22 +09:00
834bb1f187 Fix editor playing object samples while paused after cancelling exit 2022-07-09 12:14:39 -07:00
98938821e5 Merge branch 'master' into beatmap-update-flow 2022-06-30 16:44:17 +09:00
569fde4b47 Add messages to all InvalidOperationExceptions
Without this, they can be very non-descript and hard to track down
2022-06-28 01:34:25 +09:00
0ba29b6fa6 Use currentScreen instead to make sure the screen we care about is loaded 2022-06-27 18:28:00 +09:00
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
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
7692bac35a Simplify refetch (and ensure to invalidate after processing) 2022-06-24 21:02:38 +09:00
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
ef258122d2 Move GetDifficultyRating helper method to StarDifficulty 2022-06-23 19:51:58 +09:00
97fcf8cec9 Merge pull request #18668 from smoogipoo/editor-controlpoint-undo-redo 2022-06-23 04:02:24 +09:00
950551f4fd Fix metronome arm being stuck white when paused 'close enough' to center 2022-06-22 15:33:42 +09:00
b7b7de115f Merge pull request #18744 from nekodex/new-metronome-sfx
New audio feedback for metronome
2022-06-21 17:16:41 +09:00
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
a40ad6f784 Add slight transform when resetting arm from almost-zero 2022-06-21 15:07:35 +09:00
82c4d855d4 Rename sample variable to be easier to discern from other fields 2022-06-21 15:05:17 +09:00
16a9e18815 Adjust timing of latch to be more in sync with visuals 2022-06-21 15:02:53 +09:00
7b46d38318 Move colour fade back to where it was 2022-06-21 15:02:43 +09:00
3b79c632f5 Merge branch 'master' into new-metronome-sfx 2022-06-21 14:58:58 +09:00
42701757c3 Fix latch reset logic 2022-06-21 14:52:57 +09:00
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
c61e90d768 Change editor seek-while-playing modifier to be BPM agnostic 2022-06-21 13:07:50 +09:00
046b848bcd Split group selection to separate method 2022-06-21 12:53:06 +09:00
93ce6fc981 Remove redundant diff processing 2022-06-21 12:11:44 +09:00
9763a58392 Change to use ReferenceEquals 2022-06-21 12:05:52 +09:00
e0c82d11ab Convert == usages to ReferenceEquals 2022-06-20 16:56:19 +09:00
ca287d0936 Fix group deselected when table is recreated 2022-06-20 16:56:19 +09:00
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