1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-14 23:37:26 +08:00
Commit Graph

34123 Commits

Author SHA1 Message Date
Dean Herbert
4aa32038c3 Add note about stream provided to ImportTask being disposed implicitly 2022-06-20 15:38:44 +09:00
Dean Herbert
882e1c69e5 Move nested task back outside try-catch to avoid double-error 2022-06-20 15:36:44 +09:00
Dean Herbert
678b18dde6 Ensure any non-MemoryStream streams are closed as part of ImportTask 2022-06-20 15:29:56 +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
03ab6fc141 Implement IEquatable on ControlPoint 2022-06-20 15:27:43 +09:00
Dean Herbert
dd93c7359e Update xmldoc for importFromArchive method 2022-06-20 15:25:43 +09:00
Dean Herbert
92f1a2958c Rename Import(TModel) to ImportModel to differentiate from other import methods 2022-06-20 15:18:07 +09:00
Dean Herbert
a6c8a832aa Remove Import(ArchiveReader) and redirect existing usages to Import(ImportTask) 2022-06-20 15:14:57 +09:00
Dean Herbert
7daab2d45b Merge branch 'master' into skin-editor-transform-fix 2022-06-20 14:10:01 +09:00
Dean Herbert
329f1a0822 Add test coverage of original fail case and improve test reliability and code quality 2022-06-20 14:08:05 +09:00
Dan Balasescu
468e5fcbed Merge branch 'master' into editor-controlpoint-undo-redo 2022-06-20 13:47:01 +09:00
Gabe Livengood
a5bc769243
clear skineditor selected components on hide 2022-06-19 14:34:52 -04:00
Gabe Livengood
36df1da57f
Revert "stop component transform when skineditor is hidden"
This reverts commit 48ffd6aeb5.
2022-06-19 14:26:02 -04: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
Bartłomiej Dach
9023fdc947
Merge branch 'master' into reidrect-graceful-exit 2022-06-19 13:43:15 +02:00
Bartłomiej Dach
495d747da5
Fix mismatching braces in comment 2022-06-19 13:42:45 +02:00
Dan Balasescu
98d69c846c Reset spectator speed at last frame 2022-06-19 17:12:20 +09:00
Dean Herbert
6515b249ec Change data migration to do an immediate exit, rather than attempted exit 2022-06-19 12:39:58 +09:00
Dean Herbert
50e40756c4 Rename GracefullyExit to AttemptExit 2022-06-19 12:34:44 +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
Salman Ahmed
f7fc456bb1
Merge branch 'master' into reidrect-graceful-exit 2022-06-18 19:37:53 +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
Dean Herbert
b2663d9399 Update xmldoc to suggest that GracefullyExit may be overridden 2022-06-19 01:14:48 +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
Dean Herbert
56abe54fe6 Redirect graceful exiting to standard exit flow
Rather than doing a completely forced exit as we were, this will now
follow a more standard flow with the ability for the user to abort along
the way. This is more in line with how I wanted this to work.

Note that this means a confirmation is now shown. It has been discussed
in the past that this confirmation should only show when there's an
ongoing action implies the user may want to cancel the exit. For now I
think this is fine.

Addresses
https://github.com/ppy/osu/discussions/18399#discussioncomment-2811311
2022-06-18 23:43:46 +09: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
Dean Herbert
bd5037fcad Fix new hitobject placements not taking on the existing sample settings
Similar to velocity / difficulty points, a user expectation is that
volume and sample settings will be transferred to newly placed objects
from the most recent one.

Closes https://github.com/ppy/osu/issues/18742.
2022-06-18 13:49:59 +09:00
Dean Herbert
8ad96fd94b Update resources 2022-06-18 10:55:24 +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
Dan Balasescu
14cdb01fd8 Revert unintended change 2022-06-18 08:49:48 +09:00
Gabe Livengood
48ffd6aeb5
stop component transform when skineditor is hidden 2022-06-17 11:28:58 -04: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
fd9902e816 Manual #nullable processing 2022-06-17 16:38:35 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dan Balasescu
ea191da496
Merge pull request #18728 from peppy/fix-unsafe-sample-playback
Fix unsafe sample playback in `GameplaySampleTriggerSource`
2022-06-17 12:26:46 +09:00
Bartłomiej Dach
6ff6a3f5b3
Rename and document chooserPath 2022-06-16 21:51:31 +02:00
Bartłomiej Dach
6f2f4dda37
Merge branch 'master' into fix-up-down 2022-06-16 21:44:56 +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
e4ddf03ad6 Fix toolbar music button handling keys while not hovered 2022-06-16 20:22:57 +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
Bartłomiej Dach
651862fee0
Merge branch 'master' into database-migration-reliability 2022-06-16 17:19:58 +02:00
Dean Herbert
bf6c6682bc Move null to finally 2022-06-16 23:37:24 +09:00
Dean Herbert
7809566f16 Add explanatory comments 2022-06-16 23:31:49 +09:00
Dean Herbert
7b0fad6461 Null disposal token after use 2022-06-16 23:29:33 +09:00
Bartłomiej Dach
9c4f6d2ce0
Merge branch 'master' into first-run-setup-notification-interruption 2022-06-16 15:14:40 +02:00
Dean Herbert
d48fbdb439 Merge branch 'bmm-cleanup' into bmm-cleanup-2 2022-06-16 19:48:54 +09:00
Dean Herbert
e66ccfd980 Add back missing notification flow 2022-06-16 19:48:18 +09:00
Dean Herbert
448eee051a Update filename to match new class name 2022-06-16 19:41:14 +09:00
Dean Herbert
3860f0b3e5 Remove unused GetWorkingBetamap method 2022-06-16 19:08:59 +09:00
Dean Herbert
ce3d3a967c Reimplement missing methods 2022-06-16 19:05:25 +09:00
Bartłomiej Dach
a635664a86
Fix invalid method reference in comment
`BeatmapModelManager.Save()` was moved to `BeatmapManager`, not to
`BeatmapImporter`.
2022-06-16 12:01:53 +02:00
Dean Herbert
72c5b9009d Remove local realm fields in manager classes 2022-06-16 18:56:53 +09:00
Dean Herbert
f3984d98e6 Remove RealmArchiveModelManager from hierarchy 2022-06-16 18:53:13 +09:00
Dean Herbert
8a5755ca52 Remove pointless override in test implementation 2022-06-16 18:27:16 +09:00
Dean Herbert
04e4c5ef88 Move and adjust implementation regions to restore sanity 2022-06-16 18:26:13 +09:00
Dean Herbert
4d9e3d1982 Rename Score/Skin ModelManager classes to Importer for now 2022-06-16 18:11:50 +09:00
Dean Herbert
1f3e1b2d97 Combine BeatmapManager and BeatmapModelManager into one class 2022-06-16 18:07:04 +09:00
Dean Herbert
8ea3042435 Move file extensions specification to common class 2022-06-16 18:00:27 +09:00
Dean Herbert
84dba36cf5 Update usages of BeatmapModelManager which only require importing to use BeatmapImporter 2022-06-16 17:59:24 +09:00
Dean Herbert
4c372539a1 Consolidate remaining methods in BeatmapModelManager 2022-06-16 17:59:24 +09:00
Dean Herbert
251923c106 Convert NotificationOverlay to NRT 2022-06-16 17:28:08 +09:00
Dean Herbert
6b30ee0950 Tidy up DI and binding logic 2022-06-16 17:26:43 +09:00
Dean Herbert
953ca8c2dd
Merge pull request #18715 from bdach/ruleset-mod-hardening
Add several protections when creating game-global available mods
2022-06-16 17:18:49 +09:00
Dean Herbert
4526f8c07d Move database backup creation to async thread where possible 2022-06-16 17:01:17 +09:00
Dean Herbert
17dbb599d1 Don't backup collection database
This is no longer required due to recent changes which mean the
collection database will retain beatmap references even if they aren't
loaded locally (see https://github.com/ppy/osu/pull/18619).
2022-06-16 16:48:53 +09:00
Dean Herbert
739a696467 Ensure reading of existing databases when making backups doesn't create a file 2022-06-16 16:48:06 +09:00
Dean Herbert
ec53d87c30 Fix unsafe sample playback in GameplaySampleTriggerSource
Resolves https://github.com/ppy/osu/issues/18727.

Added delay from `Schedule` should be minimal as it is always called
from the `Update` thread (input propagation) anyway.
2022-06-16 16:04:57 +09: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
Dean Herbert
ac554ca51f Update resources 2022-06-16 15:06:34 +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
5d74d92fcf Revert virtual current bindable 2022-06-15 19:28:43 +03:00
Salman Ahmed
e7dcbddbeb Fix potential null reference 2022-06-15 18:53:49 +03:00
Bartłomiej Dach
1acbb87aa6
Ensure AvailableMods.Value is never null 2022-06-15 17:40:16 +02:00
Bartłomiej Dach
30382b0445
Fill out GetModsFor() xmldoc and annotate items as non-null 2022-06-15 17:40:15 +02:00
Bartłomiej Dach
e74b563b91
Add protection against arbitrary exceptions from GetModsFor() 2022-06-15 17:31:46 +02:00
Bartłomiej Dach
6e5e506fb4
Add protection against rulesets returning null mods 2022-06-15 17:31:46 +02:00
Salman Ahmed
026bad7fc4 Use notification processing mode logic instead 2022-06-15 18:13:24 +03:00
Salman Ahmed
1ff070f5ff Decouple LabelledFileChooser from LabelledTextBoxWithPopover 2022-06-15 17:45:31 +03:00
Dean Herbert
f23ddfe6cc Move remaining realm classes out of Stores namespace 2022-06-15 21:56:00 +09:00
Dean Herbert
23d7667f39 Move BeatmapImporter to correct namespace 2022-06-15 21:47:52 +09:00
Dean Herbert
9edc4fc181 Remove unnecessary ShouldDeleteArchive override (already done in base implementation) 2022-06-15 21:47:52 +09: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
e880fcf3cb
Merge pull request #18704 from peppy/update-framework
Update framework
2022-06-15 18:06:11 +09:00
Dean Herbert
584345a97e
Merge pull request #18693 from frenzibyte/toolbar-volume-control
Add basic volume control support in toolbar music button
2022-06-15 17:50:10 +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
b3aa4fcf02 Adjust a channel rather than the overall sample 2022-06-15 17:33:07 +09:00
Dean Herbert
94aa2248ca Move filter reset to more appropriate location 2022-06-15 17:32:21 +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
Dean Herbert
080f2859ef
Merge pull request #18689 from peppy/quick-import-only-on-batch
Always perform full consistency checks for single imports
2022-06-15 17:06:06 +09:00
Dean Herbert
accd6031bd Update framework 2022-06-15 16:53:56 +09:00
Dean Herbert
1f1633ddc2 Remove Update method processing of samples in PopupDialogDangerousButton 2022-06-15 16:50:23 +09:00
Salman Ahmed
583619b915 Use GlobalAction.DecreaseVolume instead 2022-06-15 10:21:27 +03:00
Dean Herbert
eac0ca4db6 Update resources 2022-06-15 16:14:46 +09:00
Salman Ahmed
dfab8b71f6
Merge branch 'master' into stable-beatmap-recursive-import 2022-06-15 10:06:46 +03:00
Dean Herbert
873806c2ea Add keyboard adjustment support 2022-06-15 15:58:22 +09:00
Dean Herbert
3df9d7c9e1 Add a bit more animation when adjusting 2022-06-15 15:56:59 +09:00
Salman Ahmed
6a8cf514e0 Update background/track file chooser to not display filename 2022-06-15 09:52:13 +03:00
Dean Herbert
5eb56ab814 Ensure Master volume is updated when scrolling on toolbar button 2022-06-15 15:41:40 +09: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
Jamie Taylor
af87722be8
Add audio feedback for 'Dangerous' dialog buttons 2022-06-15 15:41:27 +09:00
Jamie Taylor
930ec2a197
Add specific samples for dialog 'Ok' and 'Cancel' buttons 2022-06-15 15:41:27 +09:00
Dean Herbert
5201057a62 Change batch import to require at least 10 items 2022-06-15 15:31:58 +09:00
Dean Herbert
abe947bcb0 Update outdated xmldoc comments 2022-06-15 15:31:45 +09:00
Dean Herbert
19543685ff Merge branch 'master' into quick-import-only-on-batch 2022-06-15 15:27:06 +09:00
Dean Herbert
cca7633e59 Rename variables and remove unnecessary nested call to GetFullPath 2022-06-15 15:05:51 +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
22c09ec893 Handle subdirectories during beatmap stable import 2022-06-15 07:33:21 +03:00
Salman Ahmed
ee8045d507 Add failing test case 2022-06-15 07:33:21 +03:00
Salman Ahmed
268a7e1334 Fix ZoomableScrollContainer attempting to update zoom with overlapping range 2022-06-15 05:43:41 +03:00
Salman Ahmed
ddeee09a51 Fix important notifications interrupting first-run setup 2022-06-15 03:40:05 +03:00
Salman Ahmed
1171d44ad9 Add failing test case 2022-06-15 03:37:04 +03:00
Salman Ahmed
36599d1174
Merge branch 'master' into fix-hit-error-when-not-visible 2022-06-14 22:47:11 +03:00
Salman Ahmed
1f31e3fb51 Add volume UI to toolbar music button 2022-06-14 22:15:12 +03:00
Salman Ahmed
7f23677972 Add volume control support via toolbar music button 2022-06-14 22:15:12 +03:00
Dean Herbert
49ec2572b8 Allow scrolling overflow of ruleset buttons in the toolbar 2022-06-15 01:43:10 +09:00
Salman Ahmed
d89c11e49e Allow Toolbar to block scroll input from passing through 2022-06-14 19:10:13 +03:00
Dean Herbert
6be4209458 Fix AlwaysPresent specification in wrong container 2022-06-15 01:04:43 +09:00
Dean Herbert
88d5e074a8 Rename lowPriority to batchImport 2022-06-15 00:46:00 +09:00
Dean Herbert
f11fe54385 Remove custom hash function flow 2022-06-15 00:42:30 +09:00
Dean Herbert
2f8290831a Skip quick import clause when importing a single item
Closes https://github.com/ppy/osu/issues/18600.
2022-06-15 00:26:34 +09:00
Dean Herbert
7affef75b0 Remove unused Import method in SkinManager 2022-06-15 00:26:34 +09:00
Dean Herbert
cf2238f683
Merge pull request #18688 from peppy/too-many-import-methods
Various clean-up on model managers / importer classes
2022-06-15 00:12:33 +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
94ba71aa13 Remove one more usage of lowPriority 2022-06-14 20:21:28 +09:00
Dean Herbert
6250caca29 Remove duplicate implementation of same thing 2022-06-14 20:01:11 +09:00
Dean Herbert
e96c5ce703 Move and correct xmldoc to interfaces 2022-06-14 20:00:16 +09:00
Dean Herbert
84e526a2d9 Move methods around to make more sense 2022-06-14 20:00:08 +09:00
Dean Herbert
9f599a5ab4 Remove unused lowPriority flag from one Import method 2022-06-14 19:52:30 +09:00
Dean Herbert
ca0765a932 Tidy up various delegation implementations 2022-06-14 19:46:59 +09:00
Dean Herbert
d73c0ca659 Remove unused methods from IModelImporter
All the xmldoc is already present in `RealmArchiveModelImporter` so
nothing is lost here.
2022-06-14 19:42:11 +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
Dean Herbert
336df62a1f Remove unnecessary file existence check
This is not required due to `createFileInfos` always being run before we
get to this point (I believe this was added after the initial code to
check existence was added).

This flow is covered in
`BeatmapImportTests.TestImportThenReimportAfterMissingFiles`, which
still passes with the change.

While this check isn't doing any harm, as I'm going through the flow for
import-skipping, less checks are appreciated.
2022-06-13 18:57:30 +09:00
Dan Balasescu
b88461b3c9
Merge pull request #18671 from peppy/latency-scrolling-gameplay
Add scrolling gameplay visualisation mode to latency certifier
2022-06-13 18:46:46 +09:00
Dan Balasescu
f680f4d26b Apply refactorings from review 2022-06-13 17:36:32 +09:00
Dan Balasescu
7ac8ba0a74
Merge pull request #18368 from apollo-dw/dho
Move object history in difficulty calculation to the object itself
2022-06-13 17:31:08 +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
Dean Herbert
77fcf35d1d Remove unlimited frame limiter warning
This should not be required now that we have a 1,000 Hz limiter in
place.
2022-06-13 15:40:27 +09:00
Dan Balasescu
dfc643fd8c Match family string via GetFamilyString() 2022-06-13 12:35:10 +09:00
Salman Ahmed
3aec0fe9b6 Fix torus alternate not mapping "medium" weight to "regular" 2022-06-13 04:45:07 +03:00
Salman Ahmed
7971355660 Fix torus "medium" weight not mapped to "regular" when using With 2022-06-13 04:44:44 +03:00
Salman Ahmed
051aa8f028 Mark family strings as verbatim 2022-06-13 04:43:14 +03: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
Dean Herbert
52c8cea27d Update spectator/multiplayer endpoint in line with new deployment 2022-06-11 22:31:01 +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
8562641560 Update framework 2022-06-11 12:48:31 +09: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
c625c929e5 Update button text to match new terminology 2022-06-10 14:16:56 +09:00
Dean Herbert
4a5e86e451 Rename Beatmaps to BeatmapHashes for clarity 2022-06-10 14:03:51 +09:00
Dean Herbert
3b229624dd Simplify contains check to use LINQ the whole way 2022-06-10 14:02:58 +09:00
Dean Herbert
70ebfbcf5e Add recommendation text and adjust weightings to read better 2022-06-09 19:26:24 +09:00
Dan Balasescu
6d2a2ba7d6 Rename Position -> Index 2022-06-09 18:49:11 +09:00
Dan Balasescu
f0ef2e610e Merge branch 'master' into dho 2022-06-09 18:29:14 +09:00
Dan Balasescu
bc7262a3dd
Merge pull request #18627 from Joehuu/always-show-mod-selector-beatmap-info
Always show mod selector on beatmap info leaderboards regardless of supporter
2022-06-09 18:18:12 +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
Dan Balasescu
85c85f37c6
Merge pull request #18622 from jai-x/chat-timestamp-colour
Enable nullable types in `ChatLine` and update timestamp colours to match design
2022-06-09 11:39:51 +09:00
Dean Herbert
8879c59b36
Merge pull request #18623 from LittleEndu/new-me-recommender
Use new own profile statistics in difficulty recommender
2022-06-09 11:11:21 +09:00
Dan Balasescu
ace03a3c1a
Merge pull request #18620 from peppy/channel-manager-always-has-api
Ensure `ChannelManager` has access to API from point of construction
2022-06-09 11:03:13 +09:00
Joseph Madamba
f3371e8bc8 Always show mod selector on beatmap info leaderboards regardless of supporter 2022-06-08 13:22:49 -07:00
Endrik Tombak
c90b285861 Change variable name and inline it 2022-06-08 21:10:27 +03:00
Endrik Tombak
bf67b35ade Use new own profile statistics in difficulty recommender 2022-06-08 17:44:57 +03:00
Jai Sharma
c2ed41d097 Remove CanBeNull specification from DI attributes 2022-06-08 15:10:19 +01:00
Jai Sharma
04b434b8ce Update ChatLine timestamp and message colours 2022-06-08 14:04:01 +01:00
Jai Sharma
dfa31df2af Use #nullable enable in ChatLine 2022-06-08 14:04:01 +01:00
Dean Herbert
c22bffaa01 Fix filter failure when no collection is selected 2022-06-08 19:30:18 +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
c661f2b059 Ensure ChannelManager has access to API from point of construction
Closes https://github.com/ppy/osu/issues/18451.
2022-06-08 19:15:23 +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
Dean Herbert
cf438b1a44 Add index on MD5Hash property
Reduces actual query overhead significantly
2022-06-08 18:01:55 +09:00
Dan Balasescu
3a90aa0b9b Fix code styling 2022-06-08 17:57:59 +09:00
Dean Herbert
5157a78ae6 Isolate nested sample screens from main game to avoid toolbar interactions 2022-06-08 16:53:06 +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
3b46787e06
Merge pull request #18496 from smoogipoo/multiplayer-leaderboard-user-mods-2
Support mod/ruleset combinations in multiplayer gameplay leaderboard
2022-06-08 14:58:13 +09:00
Dean Herbert
eee79c9531
Merge pull request #18610 from jai-x/refactor-chat-line
Refactor `ChatLine` and fix `DrawableChannel` flow padding
2022-06-08 13:54:53 +09:00
Dean Herbert
cd649f7d97
Merge branch 'master' into multiplayer-leaderboard-user-mods-2 2022-06-08 13:39:42 +09:00
Salman Ahmed
830ff66688 Fix message notifier not handling unresolved PM channels 2022-06-08 04:31:31 +03:00
theangryepicbanana
6c05329144 Close #5820 (Ability to delete a single skin) 2022-06-07 18:01:40 -04:00
Jai Sharma
2f635fa854 Refactor ChatLine and fix DrawableChannel flow padding
Refactors `ChatLine` component to use more sensible override properties
and layout using grid container. Moves creation of username component
into its own method to simplify BDL.

Updates padding of base `DrawableChannel` flow padding.

Removes usage of `ChatOverlayDrawableChannel` since it's overrides are
no longer needed.

Updates usage of `StandAloneChatDisplay` to use new override properties
of `DrawableChannel`.
2022-06-07 22:35:45 +01: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
20cfa5d83f Add button to access latency comparer from game 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
Dan Balasescu
561a932d17
Merge pull request #18587 from peppy/skin-editor-fix-sizing
Fix skin editor not accounting for aspect ratios in base-game sizing logic
2022-06-07 13:19:50 +09:00
Henry Lin
ef5d601f67 Fix difficulty name overflow in score panel 2022-06-07 12:05:03 +08:00
Dan Balasescu
f576d53aed Update some unmatching strings 2022-06-07 11:54:41 +09:00
Dan Balasescu
0bfbfc6411 Update package 2022-06-07 11:51:24 +09:00
Dan Balasescu
86b685f7e4
Merge pull request #18589 from peppy/skin-bool-parsin
Change `skin.ini` boolean parsing to match osu!stable
2022-06-07 10:11:07 +09:00
Dean Herbert
46eba86ad1 Remove unintended left-over invalidation code 2022-06-07 09:29:30 +09:00
Bartłomiej Dach
4df7711af8
Merge branch 'master' into volume-metre-keyboard-fix 2022-06-06 23:45:42 +02:00
Bartłomiej Dach
f7ae156bb5
Merge branch 'master' into skin-editor-null-ref-on-game-exit 2022-06-06 21:49:13 +02:00
Dean Herbert
3b4b35c51e Remove unnecessary string interpolation 2022-06-06 20:18:57 +09:00
Dean Herbert
f96340e37d Improve messaging of deletion progress / completion 2022-06-06 20:18:32 +09:00
Dean Herbert
b104b7a90d Rename method to mention "all" 2022-06-06 20:12:20 +09:00
Dean Herbert
da000ee5f0 Centralise video file extensions 2022-06-06 20:11:43 +09:00
Dean Herbert
cb383d4bdc Merge branch 'master' into delete-all-beatmap-videos-sbs 2022-06-06 20:08:05 +09:00
Dean Herbert
3862681d94 Change skin.ini boolean parsing to match osu!stable
Closes https://github.com/ppy/osu/issues/18579.
2022-06-06 19:43:09 +09:00
Dean Herbert
44400142e2
Merge pull request #18584 from smoogipoo/fix-spectating-combo
Fix combo starting at 0 when spectating
2022-06-06 19:16:47 +09:00
Dean Herbert
734636299e
Merge pull request #18567 from jai-x/update-dayseparator
Update `DaySeparator` to use new design throughout
2022-06-06 19:15:43 +09:00
Dean Herbert
a8764b67e1 Add padding and avoid using invalidation (triggers too often when toolbar is being toggled) 2022-06-06 18:28:56 +09:00
Dean Herbert
28c9c61f71 Fix potential null reference in skin editor if target screen is null (during exit)
```csharp
[runtime] 2022-06-06 09:24:31 [verbose]: Host execution state changed to
Stopping
[runtime] 2022-06-06 09:24:31 [error]: An unhandled error has occurred.
[runtime] 2022-06-06 09:24:31 [error]: System.NullReferenceException:
Object reference not set to an instance of an object.
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Game.Skinning.Editor.SkinEditorOverlay.setTarget(OsuScreen target)
in
/Users/dean/Projects/osu/osu.Game/Skinning/Editor/SkinEditorOverlay.cs:line
173
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Threading.ScheduledDelegate.RunTaskInternal()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Threading.Scheduler.Update()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Drawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
[runtime] 2022-06-06 09:24:31 [error]: at
osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
```
2022-06-06 18:27:54 +09:00
Dean Herbert
003a3de270 Adjust transitions to look better 2022-06-06 18:06:46 +09: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
6351f652a2 Fix combo starting at 0 when spectating 2022-06-06 17:56:25 +09:00
Dean Herbert
7facbc9b28
Merge branch 'master' into multiplayer-test-clone-room 2022-06-06 13:47:16 +09:00
Dean Herbert
f1af3205ca Update framework 2022-06-05 13:15:05 +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
Jai Sharma
c0aaeff2b3 Update DaySeparator to use new design throughout
Moves `DaySeparator` chat component to it's own file and update it to
match new chat design. Makes use of several virtual attributes that can
be overridden to update spacing and layout in other usage contexts.

Remove redundant usage of `ChatOverlayDaySeparator`, since the new
design is now part of the base class.

Create `StandAloneDaySeparator` to use in `StandAloneChatDisplay` which
overrides attributes to match correct spacing and layout for its design.

Ensure that `DrawableChannel.CreateDaySeparator` returns type of
`DaySeparator` instead of `Drawable`.
2022-06-04 18:02:14 +01:00
Dean Herbert
8ad588d927 Update framework 2022-06-04 22:12:53 +09:00
Dean Herbert
4d0c3fcee2
Merge pull request #18556 from frenzibyte/default-legacy-spinner-approach-circle
Fix spinner approach circle displaying on default legacy skin
2022-06-04 15:30:34 +09:00
Joseph Madamba
30cf6bffad Add tooltips to beatmap card icon pills 2022-06-03 21:41:52 -07:00
Joseph Madamba
4b54fedd88 Add back hide common string using new ToSentence() extension method 2022-06-03 20:09:20 -07:00
Joseph Madamba
58c8562cb0 Fix username placeholder text casing and missing localisation on registration form 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
Salman Ahmed
045e044637 Expose LegacySkinTransformer's underlying skin for pattern-matching 2022-06-04 01:14:42 +03:00
Dean Herbert
d0e098fbcd Allow using arrow keys to navigate volume controls when controls are already visible 2022-06-04 01:04:46 +09:00
Dean Herbert
712253a35b Make non-localisable strings in VolumeMeter verbatim 2022-06-04 01:04:23 +09:00
Dean Herbert
64616a6d73 Remove completely gimped implementation in VolumeMeter 2022-06-04 00:18:54 +09:00
Jamie Taylor
396a566a0e
Add some randomness to click samples 2022-06-03 22:33:11 +09: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
2878bb592f
Use more appropriate sounds for certain components 2022-06-03 22:32:12 +09:00
Jamie Taylor
365819865e
Remove 'submit' sample usages 2022-06-03 22:31:35 +09:00
Dean Herbert
f68df1518f
Merge branch 'master' into multiplayer-test-clone-room 2022-06-03 22:29:39 +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
Dan Balasescu
725a4dd9f4
Merge pull request #18545 from peppy/web-request-canceled-fix
Fix web requests potentially being performed after cancelled
2022-06-03 21:32:24 +09:00
Dan Balasescu
3df4d1b0e6 Fix incorrect HasPassword value for returned rooms 2022-06-03 21:17:48 +09:00
Dan Balasescu
06ac3c1ad3 Make MultiplayerClient update CurrentPlaylistItem 2022-06-03 21:17:23 +09:00
Dan Balasescu
41ff170b60 Fix playlist IDs not being returned 2022-06-03 21:12:09 +09:00
Dan Balasescu
77289c7224 Fix inability to serialise-then-deserialise playlist items 2022-06-03 20:36:12 +09:00
Dan Balasescu
68337df643 Fix tests by creating a score processor 2022-06-03 20:04:20 +09:00
Dan Balasescu
5245995689 Use IsNotNull() helper 2022-06-03 19:50:21 +09:00
Dan Balasescu
646f5f0f33 Isolate "server-side" multiplayer rooms in testing 2022-06-03 19:17:34 +09:00
Dan Balasescu
2aabcf51ae Update framework again 2022-06-03 18:47:19 +09:00
Dean Herbert
514dffd49a
Merge pull request #18544 from frenzibyte/macos-borderless-default-mode
Change default window mode to "Borderless" on macOS
2022-06-03 18:18:53 +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
Salman Ahmed
cd999cf7ac Fix back-to-front conditional 2022-06-03 10:51:20 +03:00
Salman Ahmed
7b28451e3d Improve warning message for user 2022-06-03 10:50:52 +03:00
Dean Herbert
e779b460e4 Use Component instead of CompositeDrawable 2022-06-03 16:49:08 +09:00
Salman Ahmed
3ad1180c48 Use macOS instead of IsApple for better safety 2022-06-03 10:32:59 +03:00
Salman Ahmed
1a835f0622 Add warning note when running fullscreen on macOS 2022-06-03 10:32:59 +03:00
Dean Herbert
54a32bde44 Don't report sentry errors from builds targetting a different server 2022-06-03 16:29:55 +09:00
Dean Herbert
eb2d822530 Fix web requests potentially being performed after cancelled
Closes https://github.com/ppy/osu/issues/18524.
2022-06-03 16:04:52 +09:00
Dean Herbert
1af51a2b19 Update framework 2022-06-03 16:00:42 +09:00
Dan Balasescu
f1169af627
Merge pull request #18541 from peppy/update-realm
Update realm to latest version
2022-06-03 15:53:44 +09:00
Salman Ahmed
6cb8b2d6f4 Set default window mode to "Borderless" rather than "Fullscreen" on macOS 2022-06-03 09:37:21 +03:00
Salman Ahmed
3aa8bc933d Add sentry tag for selected beatmap 2022-06-03 08:21:35 +03:00
Dean Herbert
1b4c89c418 Update realm to latest version
Contains minor changes to async usage in line with upstream API changes.

I believe a feedback issue we were seeing with offset changes (the only
component using async write flow) may have been resolved by these
upstream changes (see [release
notes](https://github.com/realm/realm-dotnet/releases/tag/10.14.0)) but
am not investigating further just yet.
2022-06-03 14:16:10 +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
8523083b2b
Merge branch 'master' into fix-add-new-timing-crash 2022-06-03 00:14:33 +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
Bartłomiej Dach
d3f217cbdf
Merge branch 'master' into scoreprocessor-cleanup 2022-06-02 18:23:35 +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
773ba97117 Add xmldoc to ScoringValues 2022-06-02 16:39:51 +09:00
Dan Balasescu
a638392e81 Rename member 2022-06-02 16:35:50 +09:00
Dan Balasescu
055845d4f5 Throw exception on access before ApplyBeatmap() 2022-06-02 16:34:45 +09:00
Dean Herbert
5bd9d88219 Fix tutorial download state not matching correctly when already available locally
Closes https://github.com/ppy/osu/issues/18468.

This doesn't stop the tutorial from downloading a second time, but at
least displays the correct status afterwards. Avoiding the download is a
bit more involved and requires a change to the flow. Probably not worth
it just yet.

To test, recommend switching to production environment, as dev server
doesn't have correct metadata for tutorial resulting in weirdness.
2022-06-02 16:34:24 +09:00
Dean Herbert
5adbf85654
Merge pull request #18422 from smoogipoo/detect-exclusive-fullscreen
Detect exclusive fullscreen on Windows
2022-06-02 15:13:02 +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
Dan Balasescu
6fb1fe06a0 Remove unnecessary ApplyBeatmap call 2022-06-02 14:47:04 +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
Dan Balasescu
e551e48697 Use ScoreInfo overload in more places 2022-06-02 11:01:46 +09:00
Dean Herbert
24ce10ed6f
Merge branch 'master' into fix-dummmy-api-request-firing-2 2022-06-02 07:47:21 +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
Hugo "ThePooN" Denizart
384cdcbc40 🚑 Fix use of illegal character in Sentry's release name scheme 2022-06-01 18:12:29 +02:00
Hugo "ThePooN" Denizart
cb37dd74c1 🔧 Add prefix to Sentry release name 2022-06-01 17:19:33 +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
42598ce22a Refactor warning to notice in method names and usages 2022-06-01 16:51:58 +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
Dan Balasescu
425390e13b Refactor to reduce nested conditions 2022-06-01 09:54:47 +09:00
Dan Balasescu
50c3dfca31 Apply code reviews 2022-06-01 09:54:47 +09:00
Dan Balasescu
fc079ad8cf Refactor to reduce nested conditions 2022-06-01 09:51:06 +09:00
Dan Balasescu
a434cc14a4 Apply code reviews 2022-06-01 09:34:46 +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
Dan Balasescu
eaeb66547e Revert comment removal 2022-05-31 19:58:45 +09:00
Dan Balasescu
13d85b8cc7 Merge branch 'scoreprocessor-cleanup' into multiplayer-leaderboard-user-mods-2 2022-05-31 19:53:37 +09:00
Dan Balasescu
1e0ee1b214 Expose MaximumScoringValues for user consumption 2022-05-31 19:49:37 +09:00
Dan Balasescu
93240073a6 Rename field + rewrite xmldoc a bit 2022-05-31 19:40:07 +09:00
Dan Balasescu
28d8799e11 Add overloads to + document + expose ExtractScoringValues 2022-05-31 19:40:07 +09:00
Dan Balasescu
d6d56ee22d Fix unintentional truncation 2022-05-31 19:40:07 +09:00
Dan Balasescu
44ca350822 Reset minimal scoring values from frames 2022-05-31 19:40:07 +09:00
Dan Balasescu
20988be6bb Fix incorrect value 2022-05-31 19:40:07 +09:00
Dan Balasescu
6ccdb61853 Use new ComputeScore() overload in more cases 2022-05-31 19:40:02 +09:00
Dan Balasescu
2289812801 Add method to compute score from ScoringValues 2022-05-31 19:39:53 +09:00
Dan Balasescu
a809a19eec Remove getBonusScore() 2022-05-31 19:39:42 +09:00
Dan Balasescu
d0e3e50ca7 Extract score statistics directly into ScoringValues 2022-05-31 19:39:42 +09:00
Dan Balasescu
af0f934e1a Move raw ScoreProcessor values into ScoringValues struct 2022-05-31 19:39:38 +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