Salman Ahmed
19d300e311
Fix player loader not accepting star difficulty updates after display
2022-07-02 09:17:38 +03:00
Dean Herbert
a03abc747b
Tidy up comments and simplify bounding box centre logic
2022-07-02 12:58:34 +09:00
Dean Herbert
1fd9c64803
Change song select FooterButton
sound
2022-07-02 12:48:33 +09:00
Dean Herbert
634b6cdbbe
Send beatmap has to server on solo score request
...
Right now, the client does nothing to ensure a beatmap is in a valid
state before requesting to submit a score. There is further work to be
done client-side so it is more aware of this state (already handled for
playlists, but not for the solo gameplay loop), but the solution I have
in mind for that is a bit more involved.
This is not used server-side yet, but I want to get this sending so we
can start using it for some very basic validation.
Will resolve the basic portion of #11922 after implemented server-side.
2022-07-02 12:16:17 +09:00
Dan Balasescu
3b1842a2c2
Merge pull request #18835 from peppy/beatmap-update-flow
...
Split out beatmap update tasks to `BeatmapUpdater` and invoke from editor save flow
2022-07-01 20:28:04 +09:00
Dean Herbert
6baccad058
Merge pull request #18821 from ggliv/locked-room-filter
...
Add room access type filter to multiplayer lounge screen
2022-07-01 19:37:43 +09:00
Dean Herbert
b829884861
Merge pull request #18963 from peppy/more-placeholder-suggestions
...
Add difficulty filter reset to song select "no results" suggestions
2022-07-01 17:55:23 +09:00
Dean Herbert
b460a52faf
Merge pull request #18966 from smoogipoo/fix-flaky-multiplayer-test
...
Fix test sometimes referencing old ModSelect object
2022-07-01 17:55:06 +09:00
Dean Herbert
e213c1a4ef
Rename enum to explicitly mention it is a filter
2022-07-01 17:27:03 +09:00
Dean Herbert
9911c6cbf0
Merge branch 'master' into locked-room-filter
2022-07-01 17:17:01 +09:00
Dan Balasescu
58c9bb031f
Apply PR reviews/fixes
2022-07-01 16:51:15 +09:00
Dan Balasescu
c22e77e481
Fix test sometimes referencing old ModSelect object
2022-07-01 16:46:27 +09:00
Dean Herbert
58e25a3a01
Fix potential crash in BeatmapLeaderboard
during rapid refresh operations
2022-07-01 15:42:35 +09:00
Dean Herbert
3e0f4e7609
Add test coverage of difficulty filter reset
2022-07-01 15:28:55 +09:00
Dean Herbert
f3af612133
Suggest removing difficulty filter if no matches found at song select
2022-07-01 15:18:04 +09:00
Dean Herbert
545df0a8e8
Display difficulty on nub
2022-07-01 15:17:26 +09:00
Dean Herbert
cb9947b1c9
Align song select components a bit better
2022-07-01 15:17:12 +09:00
Dean Herbert
32139ac13f
Tidy up implementation and add basic visual test
2022-07-01 15:16:58 +09:00
Dean Herbert
d54f7fc728
Move slider range control to song select
2022-07-01 14:41:36 +09:00
cdwcgt
33209ecd25
remove useless value change
2022-06-30 19:51:58 +09:00
Dean Herbert
aab4dcefbd
Remove unnecessary invalidation handling flow
2022-06-30 17:13:26 +09:00
Dean Herbert
98938821e5
Merge branch 'master' into beatmap-update-flow
2022-06-30 16:44:17 +09:00
cdwcgt
fd0d8b1ce3
Add button state, fix async issues, watch replay method
...
Most borrowed from `ReplayDownloadButton`
2022-06-29 22:50:47 +09:00
Salman Ahmed
e3eba58cb6
Catch in triangles intro
2022-06-29 13:37:42 +03:00
Dean Herbert
6bfd351dec
Add logging of GameplayClockContainer
seeks
2022-06-28 15:23:29 +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
Dan Balasescu
d43b980a17
Merge pull request #18872 from peppy/add-working-beatmap-changed-logging
...
Add various logging of global `WorkingBeatmap` state changes
2022-06-27 21:34:05 +09:00
Dean Herbert
aa7d54f8b6
Add logging for various cases of SongSelect.FinaliseSelection
being aborted
2022-06-27 20:10:17 +09:00
Dean Herbert
50c1c066de
Add various logging of global WorkingBeatmap
state changes
2022-06-27 18:41:31 +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
30eebf3511
Merge branch 'master' into c-sharp-10
2022-06-24 21:22:33 +09:00
Dean Herbert
7692bac35a
Simplify refetch (and ensure to invalidate after processing)
2022-06-24 21:02:38 +09:00
Dean Herbert
66a01d1ed2
Allow song select to refresh the global WorkingBeatmap
after an external update
2022-06-24 21:02:38 +09:00
Bartłomiej Dach
26c5b59f6d
Replace usages of string.To{Lower,Upper}()
2022-06-24 11:57:45 +02:00
Dean Herbert
8912f07745
Merge branch 'master' into difficulty-icon-refactor-pass
2022-06-24 16:34:35 +09:00
Dean Herbert
f71f6302fd
Remove unnecessary null
casts
2022-06-24 14:50:11 +09:00
Dean Herbert
28837693e5
Nuke calculating everything
...
The whole component is pointless so I'm just going to nuke for now I
guess. Kind of makes the whole refactor effort pointless but oh well?
To expand on this, the implementation was actually incorrect as pointed
out at https://github.com/ppy/osu/pull/18819#pullrequestreview-1017886035 .
2022-06-24 14:24:06 +09:00
Bartłomiej Dach
04d69010b5
Split overlong conditional to local function
2022-06-23 18:03:07 +02:00
Bartłomiej Dach
bea70988bc
Remove unnecessary #nullable disable
2022-06-23 17:57:22 +02:00
Gabe Livengood
454eff43c5
publicity -> accesstype
2022-06-23 11:40:25 -04:00
Gabe Livengood
d67c482c48
move publicity filter to multi exclusively
2022-06-23 11:36:08 -04:00
Gabe Livengood
9a15adbfff
add an all option to publicity filter
2022-06-23 11:24:28 -04:00
Gabe Livengood
2def6d809b
refactor to use enum dropdown
2022-06-23 11:02:27 -04:00
Dean Herbert
ef258122d2
Move GetDifficultyRating
helper method to StarDifficulty
2022-06-23 19:51:58 +09:00
Dean Herbert
01da6f20b3
Tidy up all remaining usages
2022-06-23 19:27:35 +09:00
Dean Herbert
7dec530ca5
Split out simple DifficultyIcon
with no calculation overhead and update usages
2022-06-23 19:27:35 +09:00
Dean Herbert
4a2ca4394b
Remove unused ModeTypeInfo
class
2022-06-23 19:27:35 +09:00
Gabe Livengood
bf5a7e3f2a
add locked room filter
2022-06-22 17:01:28 -04:00
Dean Herbert
97fcf8cec9
Merge pull request #18668 from smoogipoo/editor-controlpoint-undo-redo
2022-06-23 04:02:24 +09:00
Dean Herbert
b660119de7
Merge pull request #18796 from bdach/mod-overlay/legacy-key-bindings
...
Add setting option to toggle between mod overlay hotkey styles
2022-06-22 20:28:18 +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
cdwcgt
bff35cb348
Shake button when replay already save
2022-06-22 01:19:20 +09:00
cdwcgt
f2eb7e0551
Use better design and fix some problem
...
Let saveReplay async but still void
Make failed score's rank = F
2022-06-21 19:06:38 +08:00
Bartłomiej Dach
73124d2b1f
Encapsulate mod hotkey selection logic in strategy pattern
2022-06-21 12:49:01 +02: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
22cb8b0d43
Merge pull request #18768 from smoogipoo/spectator-reset-speed-at-end
...
Reset spectator speed after the last frame is reached
2022-06-21 14:41:08 +09:00
Dean Herbert
88f450e1d0
Remove accidental nullable enable
spec
2022-06-21 14:40:21 +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
Salman Ahmed
f103de4efb
Merge branch 'master' into spectator-reset-speed-at-end
2022-06-21 06:37:58 +03:00
Dan Balasescu
b3e5642dfd
Use WaitingOnFrames instead
2022-06-21 12:23:43 +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
cdwcgt
43ead5820a
deal with test
2022-06-21 00:54:50 +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
Dean Herbert
a6c8a832aa
Remove Import(ArchiveReader)
and redirect existing usages to Import(ImportTask)
2022-06-20 15:14:57 +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
cdwcgt
9a6f4ef76d
Save score button on failed screen
2022-06-19 23:59:37 +09:00
Dan Balasescu
98d69c846c
Reset spectator speed at last frame
2022-06-19 17:12:20 +09:00
Salman Ahmed
a2e17941e5
Merge branch 'master' into timing-offset-adjust-seek-only-at-start
2022-06-19 01:27:44 +03:00
Bartłomiej Dach
2a95715652
Merge branch 'master' into fix-input-regression
2022-06-18 19:44:53 +02: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
Dean Herbert
3fa8c19acd
Merge branch 'master' into latency-certifier/hidden-cursor
2022-06-19 00:31:11 +09:00
Salman Ahmed
a5e5172b91
Fix BlueprintContainer
eating input from skin editor buttons
2022-06-18 18:28:36 +03:00
Bartłomiej Dach
5917c70127
Merge branch 'master' into multi-song-select-operation
2022-06-18 11:58:13 +02:00
Bartłomiej Dach
f6a3047596
Merge branch 'master' into editor-metadata-name-unification
2022-06-18 10:22:52 +02:00
Dan Balasescu
77e7e4ecb2
Fix selection being blocked after early return
2022-06-18 14:28:30 +09: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
Dan Balasescu
e04df371d1
Merge branch 'master' into multi-song-select-operation
2022-06-18 08:51:24 +09:00
Dean Herbert
4bc26dbb48
Merge pull request #18743 from smoogipoo/nullable-by-default
...
Enable NRT by default
2022-06-17 23:18:35 +09:00
Dean Herbert
5d93db1522
Merge pull request #18726 from peppy/disclaimer-stop-handling-after-suspend
...
Fix `Disclaimer` screen handling user change events after initial display
2022-06-17 18:28:06 +09:00
Dean Herbert
1900480d51
Inline animation method
2022-06-17 17:06:06 +09:00
Dan Balasescu
869db52540
Tie loading layer to ongoing operation state
2022-06-17 17:05:23 +09:00
Dean Herbert
e51babdb96
Change heart animation flow to be more correct
2022-06-17 17:01:11 +09: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
f7a27b412a
Revert "Let latency certifier buttons steal hover from area"
...
This reverts commit beb0331640
.
2022-06-16 20:35:30 +03:00
Salman Ahmed
8e088140b2
Reword comment since IRequireHighFrequencyMousePosition
isn't the issue
2022-06-16 20:09:10 +03:00
Salman Ahmed
beb0331640
Let latency certifier buttons steal hover from area
2022-06-16 20:00:30 +03:00
Salman Ahmed
ed6817ae6a
Allow switching between latency and menu cursor using IProvideCursor
2022-06-16 19:46:31 +03:00
Salman Ahmed
52538dc708
Refactor LatencyCursorContainer
to become a cursor container
2022-06-16 19:46:04 +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
Dean Herbert
89533fa33d
Fix Disclaimer
screen handling user change events after initial display
...
Unnecessary overhead, but also should resolve a production hard crash.
2022-06-16 15:40:20 +09:00
Bartłomiej Dach
f88c568c8d
Update flag sizes after switch to twemoji assets
...
The old flags used a size of 150x100, while the new assets based on
twemoji use a size of 150x108. Update existing usages to match this new
aspect ratio better.
2022-06-15 21:45:47 +02: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
7a2919975a
Fix sound clash when exiting a multiplayer room with confirmation
2022-06-15 18:48:22 +09:00
Dan Balasescu
d89c80ace2
Block operations during beatmap selection in match
2022-06-15 18:44:16 +09:00
Dean Herbert
1520ccf865
Fix double back sound due to sub screen presence in multiplayer/playlists
2022-06-15 18:44:16 +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
be2b4e68b9
Don't play player exit sound when restarting
2022-06-15 17:49:18 +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
7ac5019c08
Fix intro screens playing exit sounds
2022-06-15 17:37:30 +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
Jamie Taylor
6b744a14b0
Move 'back' sample playback from OnResuming to OnExiting
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
Salman Ahmed
36599d1174
Merge branch 'master' into fix-hit-error-when-not-visible
2022-06-14 22:47:11 +03:00
Dean Herbert
6be4209458
Fix AlwaysPresent
specification in wrong container
2022-06-15 01:04:43 +09: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
Dean Herbert
a20e43c2ae
Ensure containers which are being used to hide HUD elements still update for now
...
I don't think this is necessarily a final solution (as this means all
HUD elements are adding overhead even when not visible), but this will
make the implementations much easier for the time being.
I've checked and can't notice any perceivable overhead in profiling so
we should be fine for now.
2022-06-14 18:22:25 +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
Dean Herbert
bd9ea9bd6f
Revert most unnecessary changes
...
Turns out `AlwaysPresent` at top level is actually enough.
This reverts commit 86163d2225
.
2022-06-13 23:58:14 +09:00
Dan Balasescu
f680f4d26b
Apply refactorings from review
2022-06-13 17:36:32 +09:00
Dean Herbert
f997886142
Add scrolling gameplay visualisation mode to latency certifier
2022-06-13 17:18: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
Dean Herbert
86163d2225
Fix hit error meters not updating visual state when hidden
...
It is an expectation of users that when the HUD is shown after a period
of being hidden, it will visually reflect the state based on recent
judgements.
To achieve this, I've added `AlwaysPresent` and moved the transform
application to the meter level, rather than at a child level. If this is
seen as a bad direction, `AlwaysPresent` can be applied to the drawable
children and the transforms can be moved back.
Also of note, `ColourHitErrorMeter` is pretty weird. The flow class
could potentially be removed and reduce `AlwaysPresent` usage by one.
Can do that refactor as part of this PR if preferred.
Closes #18624 .
2022-06-13 16:38:57 +09:00
Dean Herbert
17eaf7bb5c
Add failing test coverage showing hit meters don't update when not visible
2022-06-13 16:36:22 +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
Dan Balasescu
12ff98001d
Merge pull request #18635 from peppy/latency-comparer-more-modes
...
Add multiple display modes (including circle gameplay) to latency certification
2022-06-12 00:59:36 +09:00
Dan Balasescu
486f762f44
Fix inspection by removing unstable rate code
2022-06-12 00:13:36 +09:00
Dean Herbert
af353c37c0
Don't show UR for now
2022-06-11 23:54:11 +09:00
Salman Ahmed
419b5791c9
Move circle duration to constant
2022-06-11 16:08:24 +03:00
Dean Herbert
8d53ed64a3
Fix mode cycling and add test coverage
2022-06-11 21:36:43 +09:00
Dean Herbert
0c333e5c08
Link directly to methodology section
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-06-11 21:34:00 +09:00
Dean Herbert
c697dc90e4
Hide settings at results screen
2022-06-11 21:32:02 +09:00
Dean Herbert
d130e7ebff
Remove ScrollingGameplay
class for now
2022-06-11 21:30:33 +09:00
Dean Herbert
68da9f0386
Add explicit precision for BPM adjustment
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-06-11 21:27:44 +09:00
Salman Ahmed
06f070c3ec
Fix latency certifier potentially reporting infinite mouse polling rate
2022-06-11 14:58:16 +03:00
Dean Herbert
096d6df868
Fix regression in testing and setting logic
2022-06-10 20:33:21 +09:00
Dean Herbert
8ce545ff9d
Fix visuals in circle gameplay and greedy hover
2022-06-10 20:25:33 +09:00
Dean Herbert
b956a916c1
Make units sane
2022-06-10 20:21:03 +09:00
Dean Herbert
213ccfb743
Improve explanation text and add link to wiki
2022-06-10 20:14:12 +09:00
Dean Herbert
18f74b2840
Move settings and bindables to a sane location
2022-06-10 20:04:51 +09:00
Dean Herbert
837958b254
Remove scrolling gameplay mode for now
2022-06-10 19:43:09 +09:00
Dean Herbert
ef5c1a1ecb
Improve visuals of circle gameplay mode
2022-06-10 19:42:25 +09:00
Dean Herbert
a6fd61c444
Default to circle gameplay mode
2022-06-10 19:42:25 +09:00
Dean Herbert
41d16c613d
Fix being able to hit way too early using keyboard
2022-06-10 19:42:25 +09:00
Dean Herbert
2f1c331f65
Move shared logic to LatencySampleComponent
and implement key support for circle gameplay
2022-06-10 19:42:25 +09:00
Dean Herbert
7f4a54096f
Fix circles in the future being hittable
2022-06-10 19:42:25 +09:00
Dean Herbert
ba14d646c3
Add static configuration
2022-06-10 19:42:25 +09:00
Dean Herbert
5deaa42e9f
Stop music on entering latency certification screen
2022-06-10 19:42:25 +09:00
Dean Herbert
5c7d29cd31
Remove dependency on game-wide audio
2022-06-10 19:42:25 +09:00
Dean Herbert
d46739ff0b
Add circle gameplay test coverage
2022-06-10 19:42:25 +09:00
Dean Herbert
c657ef2722
Add ability to adjust spacing
2022-06-10 19:42:25 +09:00
Dean Herbert
e9547542ea
Add circle gameplay
2022-06-10 19:42:25 +09:00
Dean Herbert
53eb5c176c
Create setup for adding other visual display modes
2022-06-10 19:42:25 +09:00
Dan Balasescu
e5d6dc1ba5
Merge pull request #18606 from peppy/latency-comparer
...
Add latency certifier system
2022-06-10 19:41:44 +09:00
Dean Herbert
e0644f2726
Simplify flow of progression to be linear
2022-06-10 15:19:10 +09:00
Dean Herbert
5541ebc76b
Revert OsuButton
changes
2022-06-10 15:02:26 +09:00
Dan Balasescu
c9dfffbc0e
Merge pull request #18619 from peppy/fix-collection-performance
...
Fix performance overhead of large collections
2022-06-10 15:01:31 +09:00
Dean Herbert
eb16de9c71
Use upper-case "Hz"
2022-06-10 14:38:04 +09:00
Dean Herbert
f71343c880
Fix box colour getting stuck when changing active mode
2022-06-10 14:28:46 +09:00
Dean Herbert
5b8bd24140
Simplify text when reaching maximum supported level
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-06-10 14:25:15 +09:00
Dean Herbert
69b856bd58
Rename rounds variables to hopefully read better
2022-06-10 14:23:24 +09:00
Dean Herbert
613814c26c
Make TargetFrameRate
nullable
2022-06-10 14:18:35 +09:00
Dean Herbert
4a5e86e451
Rename Beatmaps
to BeatmapHashes
for clarity
2022-06-10 14:03:51 +09:00
Dean Herbert
70ebfbcf5e
Add recommendation text and adjust weightings to read better
2022-06-09 19:26:24 +09:00
Dan Balasescu
6e450b7350
Explicitly handle operation cancelled exceptions
2022-06-09 14:35:53 +09:00
Dan Balasescu
ec03dc16db
Don't trigger notification when user quit
2022-06-09 14:13:14 +09:00
Dan Balasescu
bfde334e77
Allow beatmaps to load endlessly when entering Player
2022-06-09 14:03:21 +09:00
Dean Herbert
187086e4ec
Merge pull request #18609 from ALANVF/settings-delete-skin
...
Add button to delete the current skin
2022-06-08 19:18:59 +09:00
Dean Herbert
42cd7d9e6e
Change CollectionManager
to only store MD5 hashes instead of full BeatmapInfo
2022-06-08 18:23:09 +09:00
Dan Balasescu
f8594acb1d
Cleanup dialog implementation
2022-06-08 18:17:43 +09:00
Dan Balasescu
3a90aa0b9b
Fix code styling
2022-06-08 17:57:59 +09:00
Dan Balasescu
c43670fcd9
Merge pull request #18603 from peppy/fix-import-dialog
...
Add placeholder when no results are visible at song select
2022-06-08 15:22:31 +09:00
Dean Herbert
cd649f7d97
Merge branch 'master' into multiplayer-leaderboard-user-mods-2
2022-06-08 13:39:42 +09:00
theangryepicbanana
6c05329144
Close #5820 (Ability to delete a single skin)
2022-06-07 18:01:40 -04:00
Dean Herbert
b924aa3296
Fix tests failing when run headless
2022-06-08 00:36:19 +09:00
Dean Herbert
228683e956
Fix nullability of dialogOverlay
dependency
2022-06-07 23:48:34 +09:00
Dean Herbert
2e0b888410
Fix song select carousel invalidating every frame during global overlay dimming
2022-06-07 23:46:53 +09:00
Dean Herbert
9da99a0ddf
Rename to latency certifier
2022-06-07 23:34:55 +09:00
Dean Herbert
1a1dfaeae6
Update framework
2022-06-07 23:27:59 +09:00
Dean Herbert
95dea00725
Tidy up code and namespaces
2022-06-07 23:10:08 +09:00
Dean Herbert
058760253a
Add test coverage of certification flow
2022-06-07 23:02:15 +09:00
Dean Herbert
c1ef59ab03
Add more comprehensive certification flow (and remove "difficulty" terminology)
2022-06-07 22:52:24 +09:00
Dean Herbert
0561e9cc75
Fix mouse focus not always working
2022-06-07 20:45:37 +09:00
Dean Herbert
f2524fc3d7
Increase separator width
2022-06-07 20:42:19 +09:00
Dean Herbert
60d7060baa
Add tab focus support
2022-06-07 20:28:42 +09:00
Dean Herbert
00a6cbe53f
Allow using J/K to move box as well
2022-06-07 20:03:49 +09:00
Dean Herbert
146225d87e
Fix multiple issues with layout and text
2022-06-07 20:02:26 +09:00
Dean Herbert
43a04010a7
Add display of polling rate
2022-06-07 19:43:33 +09:00
Dean Herbert
2e7a966218
Add proper frame rate limiting and fix mouse cursor missing at results
2022-06-07 19:31:56 +09:00
Dean Herbert
c0e88d9577
Add better messaging and pass/fail cutoff
2022-06-07 19:06:54 +09:00
Dean Herbert
3fc8ac0ec7
Add key bindings everywhere
2022-06-07 18:27:42 +09:00
Dean Herbert
a175defefd
Add difficulty levels
2022-06-07 18:11:54 +09:00
Dean Herbert
3bd8bbd297
Add explanatory text
2022-06-07 17:36:34 +09:00
Dean Herbert
c323c67d7d
Allow increasing confidence by playing longer
2022-06-07 17:28:31 +09:00
Dean Herbert
0adeccbf03
Add full latency testing flow
2022-06-07 17:28:31 +09:00
Dean Herbert
f8524c3af4
Use VisibilityContainer
to avoid too many animations triggering
2022-06-07 17:25:06 +09:00
Dean Herbert
a04af1ca5f
Enable nullable and add hinting at convert filter criteria
2022-06-07 17:25:06 +09:00
Dean Herbert
0d32c94104
Add initial implementation of beatmap carousel no-results-placeholder
2022-06-07 17:25:06 +09:00
Dean Herbert
df9174ec00
Remove import popup dialog from song select
...
This has been replaced in spirit by the first run overlay.
2022-06-07 16:45:27 +09:00
Dan Balasescu
476a05cafb
Merge pull request #18599 from hlysine/fix-score-panel-diff-name-overflow
...
Truncate difficulty name in score panel
2022-06-07 14:16:02 +09:00
Henry Lin
ef5d601f67
Fix difficulty name overflow in score panel
2022-06-07 12:05:03 +08: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
Joseph Madamba
4b54fedd88
Add back hide common string using new ToSentence()
extension method
2022-06-03 20:09:20 -07:00
Joseph Madamba
b342aad24a
Revert/fix some incorrectly used sorting localisation
2022-06-03 19:56:33 -07:00
Jamie Taylor
6115275bc2
Use 'default' sampleset for toolbar and repurpose 'toolbar' select sample temporarily
2022-06-03 22:33:06 +09:00
Jamie Taylor
365819865e
Remove 'submit' sample usages
2022-06-03 22:31:35 +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
59ffc8b08e
Merge branch 'master' into multiplayer-leaderboard-user-mods-2
2022-06-02 20:45:10 +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
Dan Balasescu
4d9a77bdc0
Stop using Drawable.Clock altogether
2022-06-02 15:02:50 +09:00
Dan Balasescu
2209a009f9
Don't process clock
2022-06-02 14:48:55 +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