Bartłomiej Dach
e451e43b90
Implement input handling behaviour of beatmap card dropdown
2021-12-05 16:31:45 +01:00
Bartłomiej Dach
250e5b47b7
Move "extra info" beatmap card row to separate component
2021-12-05 15:52:19 +01:00
Bartłomiej Dach
3fea8d5e62
Implement visual behaviour of expanded card state
2021-12-05 15:48:02 +01:00
Bartłomiej Dach
a07f8c74dc
Add basic structure for composable card dropdown
2021-12-05 15:26:37 +01:00
Bartłomiej Dach
38702beabf
Merge branch 'master' into i-ruleset-store
2021-12-04 15:05:39 +01:00
Dean Herbert
e75e209053
Cache and consume IRulesetStore
where feasible
2021-12-03 18:16:01 +09:00
Dean Herbert
9c717ce7ec
Merge branch 'master' into diffcalc-cli-arg
2021-12-03 15:10:55 +09:00
Bartłomiej Dach
45656c3599
Fix difficulty spectrum display not ordering ruleset groups by ID
2021-11-29 22:06:11 +01:00
Bartłomiej Dach
0fc4d6dc2a
Implement beatmap card difficulty list
2021-11-29 22:04:09 +01:00
Dean Herbert
a7e4e7be3a
Remove the ability to specify a filename in ReplaceFile
2021-11-29 18:11:51 +09:00
Dan Balasescu
e5dcfc3113
Use console IPC
2021-11-28 14:03:21 +09:00
Bartłomiej Dach
05f7ea6b6d
Remove mentions of "panel" and "direct" from names of old download buttons
2021-11-27 15:08:03 +01:00
Bartłomiej Dach
a043d1e427
Move old beatmap download button to more general namespace
2021-11-27 15:06:57 +01:00
Bartłomiej Dach
7419682334
Move icon pill to beatmap card-specific namespace
2021-11-27 15:01:48 +01:00
Dean Herbert
f16ef1ee69
Reapply schedule workaround for PreviewTrack
2021-11-26 22:34:05 +09:00
Dean Herbert
bf443a5a7a
Switch unnecessary return
to break
instead
2021-11-26 15:36:16 +09:00
Dean Herbert
5de2f6211d
Show a spinner instead of the download button on the new card during beatmap download
2021-11-26 15:32:33 +09:00
Bartłomiej Dach
84a36ab4a9
Add integration with beatmap set overlay
2021-11-25 22:30:46 +01:00
Dan Balasescu
f712aeee01
Merge pull request #15795 from peppy/realm-integration/separate-download-flow
...
Split out download logic from main manager classes
2021-11-25 20:59:23 +09:00
Dan Balasescu
d7a960212f
Merge pull request #15794 from peppy/realm-integration/stable-export-flow
...
Split out legacy model export logic into `LegacyModelExporter` classes
2021-11-25 20:20:18 +09:00
Dan Balasescu
2b85738384
Merge pull request #15797 from peppy/remove-pointless-i-beatmap-model-manager
...
Remove pointless interface class for `IBeatmapModelManager`
2021-11-25 19:07:19 +09:00
Dean Herbert
a6ee0eec0d
Remove pointless interface class for IBeatmapModelManager
...
Was originally going to be used but serves no purpose any more.
2021-11-25 18:15:10 +09:00
Dean Herbert
eeccf836ec
Remove unnecessary GameHost
parameter
2021-11-25 17:42:41 +09:00
Dean Herbert
716543b5b3
Move beatmap download logic out of BeatmapManager
2021-11-25 17:29:41 +09:00
Dean Herbert
cc1b91e4bd
Split out legacy model export logic into LegacyModelExporter
classes
2021-11-25 16:41:12 +09:00
Dean Herbert
7488ccd5fe
Update all models to implement IHasNamedFiles
2021-11-25 16:41:12 +09:00
Dean Herbert
416ee2447a
Move archive filename helper method to extension method
2021-11-25 16:35:54 +09:00
Dean Herbert
6cab7b877d
Move stable import handling into its own class
2021-11-25 15:36:58 +09:00
Dean Herbert
1533e245de
Merge pull request #15767 from bdach/beatmap-card/track-preview
...
Add preview track playback function to beatmap card
2021-11-25 12:08:03 +09:00
Dan Balasescu
ce8500a732
Merge branch 'master' into remove-model-file-list-inits
2021-11-24 19:46:42 +09:00
Dean Herbert
b739b6a725
Merge branch 'master' into beatmap-card/track-preview
2021-11-24 18:54:25 +09:00
Dean Herbert
183b95cbc2
Rename BeatmapSetOnlineStatus
to BeatmapOnlineStatus
...
This variable is used at more than just a set level.
2021-11-24 18:42:49 +09:00
Dean Herbert
ddbd4f9473
Merge branch 'master' into remove-model-file-list-inits
2021-11-24 18:39:01 +09:00
Dan Balasescu
5ff62a8e04
Merge pull request #15779 from peppy/remaining-misc-fixes
...
Apply some various code quality fixes that don't fit elsewhere
2021-11-24 16:59:49 +09:00
Dan Balasescu
74b6c33fab
Merge pull request #15778 from peppy/ruleset-info-id-usage
...
Update usages of `RulesetInfo.ID` to use `OnlineID` instead
2021-11-24 16:55:28 +09:00
Dan Balasescu
834bdd8e5c
Merge pull request #15776 from peppy/non-null-beatmapset-metadata
...
Make `BeatmapSet.Metadata` non-null
2021-11-24 16:48:28 +09:00
Dan Balasescu
8ce5324c8b
Merge pull request #15772 from peppy/remove-model-list-inits
...
Initialise `BeatmapSet.Beatmaps` list at construction time
2021-11-24 16:41:19 +09:00
Dean Herbert
3e0e01abdb
Move bookmark parsing logic into LegacyBeatmapDecoder
2021-11-24 16:29:51 +09:00
Dean Herbert
9c61ec217b
Remove unnecessary mainTrackMixer
parameter from BeatmapManager
2021-11-24 16:27:17 +09:00
Dean Herbert
bbd3ea5b77
Update all actual usages of RulesetInfo.ID
to use OnlineID
instead
2021-11-24 15:50:26 +09:00
Dean Herbert
3946a39b65
Make BeatmapSet.Metadata
non-null
2021-11-24 15:03:34 +09:00
Dean Herbert
a7853fc9cc
Fix cases of known-non-null
2021-11-24 14:26:25 +09:00
Dean Herbert
99a139dc98
Initialise all file lists at construction time (and remove setter)
2021-11-24 13:56:21 +09:00
Dan Balasescu
6183d1cd46
Merge pull request #15769 from peppy/model-equality-consistency
...
Update cases where equality can be used instead of primary key equality
2021-11-24 13:45:57 +09:00
Dean Herbert
a3fdab34d5
Avoid json serialisation of aggregate helper properties
...
Also avoids `throw`ing when there are no beatmaps available. Until now
this wasn't an issue due to the `Beatmaps` list being null instead of empty.
2021-11-24 13:36:34 +09:00
Dean Herbert
8c60f37508
Fix cases of dynamically assigning Beatmap
s to BeatmapSetInfo
using list assignment
2021-11-24 13:27:37 +09:00
Dean Herbert
49c2cb9125
Initialise BeatmapSet.Beatmaps
list to line up with realm expectations
2021-11-24 13:25:55 +09:00
Dean Herbert
729f681938
Update cases where equality can be used instead of primary key equality
2021-11-24 12:49:57 +09:00
Dean Herbert
0eea026afb
Remove null checks on CreateInstance()
calls
2021-11-24 12:23:09 +09:00
Bartłomiej Dach
1a1603f0db
Implement preview track playback
2021-11-23 23:17:30 +01:00
Bartłomiej Dach
9164f006aa
Implement basic behaviour of play button
2021-11-23 22:44:09 +01:00
Bartłomiej Dach
5d13686cdf
Add play button for card preview
2021-11-23 22:44:08 +01:00
Bartłomiej Dach
4011da033b
Split off thumbnail to separate component
2021-11-23 22:44:07 +01:00
Dean Herbert
b9923e5396
Remove subclassing of RulesetInfo
2021-11-22 16:39:17 +09:00
Bartłomiej Dach
975744d26c
Remove no longer used [Cached]
attribute
2021-11-21 13:19:16 +01:00
Dean Herbert
c0962b1c4f
Merge branch 'master' into beatmap-card/download-button
2021-11-21 20:04:26 +09:00
Bartłomiej Dach
bb8e8bc4f0
Use consistent type for mod collection in all overloads
2021-11-21 11:30:45 +01:00
Dean Herbert
63642450a4
Merge branch 'master' into fix-working-beatmap-wrong-exception-type
2021-11-21 15:50:07 +09:00
Dan Balasescu
a06b361fe2
Merge pull request #15705 from bdach/fix-difficulty-cache-caching-zeroes
...
Fix zero star difficulty values being cached when diffcalc was interrupted
2021-11-21 15:45:29 +09:00
Bartłomiej Dach
297de27a6a
Use BindTarget
from card rather than caching & resolving download tracker
2021-11-20 18:48:26 +01:00
Bartłomiej Dach
b3606f4a21
Rename {Play -> GoToBeatmap}Button
2021-11-20 18:36:39 +01:00
Bartłomiej Dach
a7e45a9098
Log all non-cancellation errors in difficulty cache
2021-11-20 17:32:40 +01:00
Bartłomiej Dach
6100bf66a6
Clean up cancellation handling in WorkingBeatmap
...
After the recent changes introducing cancellation support to
`WorkingBeatmap`, it turned out that if the cancellation support was
used, `GetPlayableBeatmap()` would raise timeout exceptions rather than
the expected `OperationCanceledException`.
To that end, split off a separate overload for the typical usage, that
catches `OperationCanceledException` and converts them to beatmap load
timeout exceptions, and use normal `OperationCanceledException`s in the
overload that requires a cancellation token to work.
2021-11-20 17:23:55 +01:00
Bartłomiej Dach
15feb17da8
Change difficulty cache storage type to nullable
...
The recent changes related to adding support for working beatmap load
cancellation exposed a flaw in the beatmap difficulty cache. With the
way the difficulty computation logic was written, any error in the
calculation process (including beatmap load timeout, or cancellation)
would result in a 0.00 star rating being permanently cached in memory
for the given beatmap.
To resolve, change the difficulty cache's return type to nullable.
In failure scenarios, `null` is returned, rather than
`default(StarDifficulty)` as done previously.
2021-11-20 17:00:50 +01:00
Dean Herbert
83b4625bd5
Replace existing cases with new helper method
2021-11-19 22:15:41 +09:00
Dean Herbert
eecf6ad558
Add IsManaged
helper method to EF classes to match realm implementation
2021-11-19 21:56:06 +09:00
Dean Herbert
59e763467f
Move StoragePath
implementation to an extension method
2021-11-19 16:08:38 +09:00
Dean Herbert
6e5918a100
Add slight scale to icon buttons
2021-11-19 15:28:03 +09:00
Dean Herbert
741c27c1f2
Always populate action to make button behave better in testing scenarios
2021-11-19 15:27:38 +09:00
Dean Herbert
5034cb1025
Merge branch 'master' into beatmap-card/download-button
2021-11-19 14:59:42 +09:00
Bartłomiej Dach
0eaf450204
Make field readonly
2021-11-18 22:50:41 +01:00
Bartłomiej Dach
8a1d6757af
Merge branch 'master' into beatmap-card/download-button
2021-11-18 22:37:35 +01:00
Bartłomiej Dach
412abf30d9
Refactor buttons again to work with latest design guidelines
2021-11-18 22:34:40 +01:00
Bartłomiej Dach
761d1e45f2
Use lime background on right side of card to signify downloaded sets
2021-11-18 21:36:41 +01:00
Dean Herbert
bf8507c7b9
Only apply default timeout when debugger not attached
2021-11-18 23:26:45 +09:00
Bartłomiej Dach
1c13b39104
Revert incorrect ordering change
2021-11-17 22:10:46 +01:00
Bartłomiej Dach
8b134914cf
Merge branch 'master' into beatmap-cancellation-token
2021-11-17 21:52:30 +01:00
Dean Herbert
7c2e79f911
Update all simple cases of switching to IWorkingBeatmap
2021-11-17 20:56:57 +09:00
Dean Herbert
0715d40ea0
Merge branch 'master' into beatmap-cancellation-token
2021-11-17 11:16:10 +09:00
Dean Herbert
13f3e2eea9
Add back default timeout to GetPlayableBeatmap
2021-11-17 11:06:31 +09:00
Dean Herbert
f5c52755c9
Merge branch 'master' into i-working-beatmap/difficulty-calculator
2021-11-16 16:19:22 +09:00
Dean Herbert
726a0cc091
Merge branch 'master' into beatmap-collection-inteface-types
2021-11-16 15:31:10 +09:00
Dean Herbert
d2a7670494
Remove no longer used helper method
2021-11-16 14:48:02 +09:00
Dean Herbert
6cca657a2d
Standardise naming of CancellationToken
parameters
2021-11-16 14:45:51 +09:00
Dean Herbert
53c0682a08
Merge branch 'master' into beatmap-cancellation-token
2021-11-16 14:43:13 +09:00
Dean Herbert
9207b87b76
Add back interface equality but limit to only matching types
2021-11-16 12:35:18 +09:00
Dan Balasescu
1d87b47fec
Remove now-unnecessary R# disables
2021-11-15 19:40:31 +09:00
Dean Herbert
a90cfb4a2f
Implement remaining properties via implicit implementation rather than interface methods
2021-11-15 19:30:46 +09:00
Dean Herbert
369b4ba789
Update DifficultyCalculator
to take an IRulesetInfo
2021-11-15 19:16:48 +09:00
Dean Herbert
62d670a3ca
Update DifficultyCalculator
to take an IWorkingBeatmap
2021-11-15 19:16:48 +09:00
Dean Herbert
960cecf3db
Merge branch 'beatmap-collection-inteface-types' into i-working-beatmap/difficulty-calculator
2021-11-15 19:16:47 +09:00
Dean Herbert
a0e25d18cd
Expose more of WorkingBeatmap
via interface
2021-11-15 18:25:48 +09:00
Dean Herbert
0b4822b552
Remove newly added equality
2021-11-15 14:35:01 +09:00
Bartłomiej Dach
b58fe2d80a
Restructure card to use single tracker at the top level
2021-11-13 15:39:03 +01:00
Bartłomiej Dach
c38c95b373
Merge branch 'master' into beatmap-card/download-button
2021-11-13 14:59:59 +01:00
Dean Herbert
9f7e2750a5
Merge branch 'master' into beatmap-collection-inteface-types
2021-11-12 19:41:29 +09:00
Dean Herbert
5e88d59a26
Switch BeatmapInfo.OnlineID
delegation to use property getter for conformity
2021-11-12 19:06:12 +09:00
Dean Herbert
1d962648c2
Standardise implementations
2021-11-12 19:00:27 +09:00
Dean Herbert
54cd1158a4
Add IBeatmapSetInfo
equality support
2021-11-12 18:16:36 +09:00
Dean Herbert
a67e156883
Add IBeatmapInfo
equality support
2021-11-12 18:11:33 +09:00
Dean Herbert
692e846acd
Rename BeatmapSetInfo.OnlineBeatmapSetID
to OnlineID
to match interface
2021-11-12 17:52:44 +09:00
Dean Herbert
6a098a8634
Rename BeatmapInfo.OnlineBeatmapID
to OnlineID
to match interface
2021-11-12 17:46:24 +09:00
Dean Herbert
51a353e12d
Rename BeatmapInfo.Version
to DifficultyName
to match underlying interface
2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11
Rename BeatmapInfo.StarDifficulty
to StarRating
to match underlying interface
2021-11-11 17:19:46 +09:00
Bartłomiej Dach
222846290e
Update download progress bar appearance to match intended design
2021-11-10 18:38:52 +01:00
Bartłomiej Dach
91baaa73f3
Show download progress on card body rather than in button
2021-11-10 16:03:48 +01:00
Bartłomiej Dach
f090e5ca75
Restyle card buttons to resemble buttons more
2021-11-10 15:24:36 +01:00
Bartłomiej Dach
343318c6f9
Merge branch 'master' into display-string
2021-11-10 11:10:38 +01:00
Dean Herbert
f4ef841972
Add fallback for cases where beatmap has no author/title/artist specified
2021-11-10 18:29:05 +09:00
Bartłomiej Dach
3d148aea40
Fix GetDisplayTitle()
implementations relying on ToString()
themselves
2021-11-09 13:53:08 +01:00
Dean Herbert
3b485b5f37
Rewrite PreviewTrackManager
to avoid constructing TrackBass
locally
...
This paves the way for the framework code quality change
(https://github.com/ppy/osu-framework/pull/4873 ) which stops exposing
the constructor.
Most of the restructuring here is required to give `PreviewTrackManager`
an adjustable target to apply the global mute.
2021-11-09 17:38:12 +09:00
Bartłomiej Dach
704ff47a0e
Swap icon for "go to beatmap" state
2021-11-09 08:07:56 +01:00
Bartłomiej Dach
2186b51676
Implement detailed download button behaviour
2021-11-08 22:18:14 +01:00
Bartłomiej Dach
a60cceeda6
Implement basic appearance of download button
2021-11-08 22:18:14 +01:00
Bartłomiej Dach
c65e7a4436
Add test coverage for download button
2021-11-08 22:17:56 +01:00
Dean Herbert
2b518035da
Merge pull request #15522 from bdach/taiko-slider-multiplier-saving
...
Fix taiko beatmap scroll speed increasing after every save in editor
2021-11-08 22:51:43 +09:00
Bartłomiej Dach
74603253d2
Store full model rather than online ID only
2021-11-08 13:42:56 +01:00
Dean Herbert
72489b32f9
Move toggle code into own method for readability
2021-11-08 21:39:16 +09:00
Dean Herbert
9a2425f316
Remove unused field for now to appease inspectcode
2021-11-08 21:36:28 +09:00
Bartłomiej Dach
540b7e1b38
Fix taiko editor not unapplying slider multiplier changes on save
2021-11-08 13:28:42 +01:00
Bartłomiej Dach
f4b8dee2d0
Update favourite statistic value on favourite button clicks
2021-11-08 11:53:54 +01:00
Bartłomiej Dach
b5cbdcf981
Implement basic behaviour of favourite button
2021-11-08 11:53:54 +01:00
Bartłomiej Dach
0faa26fc13
Add basic structure for buttons
2021-11-08 11:53:53 +01:00
Dean Herbert
8b85c2c8de
Merge pull request #15491 from peppy/remove-stupid-weak-reference-bindable-events
...
Revert weird event flow in model manager/importers
2021-11-08 15:19:58 +09:00
Dean Herbert
a2dfb5fd8c
Merge pull request #15513 from bdach/beatmap-card/statistics
...
Add statistics display to beatmap card
2021-11-08 14:45:56 +09:00
Dean Herbert
97345ac9e6
Remove unnecessary TimeSpan timeout
parameter (CancellationToken
can now be used)
2021-11-08 14:33:32 +09:00
Dean Herbert
e338340c6a
Merge branch 'master' into beatmap-cancellation-token
2021-11-08 14:32:56 +09:00
Dean Herbert
78aef9ce86
Merge branch 'master' into remove-stupid-weak-reference-bindable-events
2021-11-08 13:35:49 +09:00
Dean Herbert
1589b50d6e
Merge branch 'master' into beatmap-card/statistics
2021-11-08 13:28:31 +09:00
Dean Herbert
fb495d77ce
Implement TooltipText
directly
2021-11-08 13:22:57 +09:00
Bartłomiej Dach
0e09edfce2
Do not show nomination info if hype info not present to match web
2021-11-07 21:33:42 +01:00
Bartłomiej Dach
1f405a7e71
Display extended statistics on card hover
2021-11-07 21:33:41 +01:00
Bartłomiej Dach
c0b5b0e909
Add new statistic types to online info
2021-11-07 21:33:41 +01:00
Bartłomiej Dach
04c2a9cd59
Display basic statistics on card hover
2021-11-07 21:03:06 +01:00
Tollii
d5f5d74a89
Rename CancellationToken variable
2021-11-07 13:41:54 +01:00
Dean Herbert
f0809801c5
Update remaining actions to events
2021-11-07 11:34:37 +09:00
Dean Herbert
0ecf5f201c
Rename User
to APIUser
and move to correct namespace
2021-11-07 11:26:01 +09:00
Tollii
cf0b757b16
Fix PR comments.
...
Nitpick, more cancellation token checks.
2021-11-06 16:03:53 +01:00
Dean Herbert
89cc2523ef
Fix incorrectly specified events
2021-11-06 22:31:49 +09:00
Dean Herbert
2881ce0f5a
Merge branch 'master' into remove-stupid-weak-reference-bindable-events
2021-11-06 14:08:39 +09:00
Tollii
eb7d04bc77
Add cancellation token support for beatmap difficulty calculation.
2021-11-06 00:21:29 +01:00
Tollii
f0caa10066
Add support for a provided cancellation token for GetPlayableBeatmap()
2021-11-05 23:53:48 +01:00
Dean Herbert
9a7c75508e
Merge branch 'master' into user-class-cleanup
2021-11-05 19:56:18 +09:00
Dean Herbert
54f72d68ca
Revert weird event flow in model manager/importers
2021-11-05 19:12:49 +09:00
Dean Herbert
6c385ccd29
Move second generic to abstract
model downloader rather than interface type
2021-11-05 17:37:05 +09:00
Dean Herbert
1fe9bca819
Change ModelDownloader
's requirement to an IModelImporter
rather than IModelManager
2021-11-05 16:47:18 +09:00
Dean Herbert
b90f44493c
Remove importer inheritance from IModelManager
...
Now only exists in legacy implementations, to reduce inheritance
complexity of interfaces which are going to be used going forwards.
2021-11-05 16:45:38 +09:00
Dean Herbert
ed07ee8c61
Update all existing usages of AuthorString
/AuthorId
...
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
86540d1fb6
Update existing usages of Author
as string
to access Username
directly
2021-11-04 18:57:54 +09:00
Dean Herbert
7547810979
Change IBeatmapMetadataInfo.Author
to be an IUser
2021-11-04 18:32:42 +09:00
Dean Herbert
b9983add15
Rename User
to APIUser
and move to correct namespace
2021-11-04 18:21:31 +09:00
Dean Herbert
4b1b92cde6
Stop BeatmapInfo
from implementing IBeatmapOnlineInfo
and remove all usages
2021-11-04 15:23:04 +09:00
Dean Herbert
9c926e5514
Remove BeatmapSetInfo.OnlineInfo
and all usages
2021-11-04 15:23:04 +09:00
Dean Herbert
0d0eab90bc
Merge branch 'beatmap-refactor/playlist-use-api-beatmap-extended' into beatmap-refactor/remove-online-info
2021-11-04 15:23:02 +09:00
Dean Herbert
84d36cbae7
Add fallback for cases where BeatmapSet
may be null
...
Seems to only happen in tests, but better safe than sorry.
2021-11-04 15:22:33 +09:00
Dean Herbert
a49366ff84
Remove nullability from IBeatmapInfo.Metadata
2021-11-04 14:28:39 +09:00
Dean Herbert
1e73b09e57
Fix another couple of cases of incorrect string null/empty checking
2021-11-04 14:22:28 +09:00
Dean Herbert
41854f2e16
Fix incorrect check on AudioFile
presence
2021-11-04 14:02:09 +09:00
Dean Herbert
67d9590a79
Fix new inspections
2021-11-04 14:02:09 +09:00
Dean Herbert
772b6c6dcd
Enable nullable support on BeatmapMetadata
2021-11-04 12:11:42 +09:00
Dean Herbert
ca438a102d
Fix beatmap paths including invalid slash/backslash characters
2021-11-03 16:46:05 +09:00
Bartłomiej Dach
cf7545e36c
Merge branch 'master' into beatmap-card-basics
2021-11-03 00:11:03 +01:00
Bartłomiej Dach
1813681fac
Move private method below protected
2021-11-03 00:10:50 +01:00
Bartłomiej Dach
75e89f17ad
Rewrite BeatmapCardContentBackground
2021-11-03 00:07:03 +01:00
Dean Herbert
5ea901da2e
Merge pull request #15429 from peppy/fix-beatmap-download-notifications
...
Fix beatmap download notifications not showing beatmap name correctly
2021-11-03 04:36:59 +09:00
Dean Herbert
392559ae3e
Fix beatmap download notifications not showing beatmap name correctly
2021-11-03 03:23:41 +09:00
Dean Herbert
6efd3d3115
Don't perform background difficulty calculation for multiplayer panels
...
There are cases these are shown in a long list. They shouldn't be
running calculations.
2021-11-03 03:12:52 +09:00
Dean Herbert
08b0ffad50
Fix incorrect check for local beatmap in BeatmapDifficultyCache
...
This was correct in the WIP branch I have, but pulled out alone (where
usages of `ToBeatmapInfo` still exist) it was not enough.
2021-11-03 03:12:52 +09:00
Dean Herbert
15c770e155
Remove no longer used Section.None
2021-11-02 14:01:41 +09:00
Dean Herbert
ab28948744
Default legacy decoder to General
section, rather than none
...
This is mainly to reach parity with how stable handles such cases for
skins specifically. It was brought to our attention after finding a skin
with a malformed `\[General]` tag which did not break further parsing of
the file on stable, but did on lazer.
Note that stable defaults to an "unknown" section for beatmaps, but
functionally I can't think of a regression case from changing this to a
"general" default.
2021-11-02 13:59:13 +09:00
Bartłomiej Dach
f671ee28c5
Use buffered container to eliminate gaps near foreground border
2021-11-01 20:17:27 +01:00
Bartłomiej Dach
a59f2d7b83
Implement basic hover card state
2021-11-01 19:41:11 +01:00
Bartłomiej Dach
5962f16b1c
Implement basic card appearance
2021-11-01 19:41:11 +01:00
Dan Balasescu
9e633a1b17
Merge pull request #15321 from peppy/beatmap-refactor/download-tracker
...
Replace `DownloadTrackingComposite` with instantiable `DownloadTracker` components
2021-11-01 15:48:12 +09:00
Dean Herbert
10a9266956
Fix beatmap creator showing twice in tournament map pool panels
2021-11-01 14:33:24 +09:00
Dean Herbert
19feae4a8e
Merge branch 'master' into beatmap-refactor/download-tracker
2021-11-01 13:15:36 +09:00
Bartłomiej Dach
b0c4fa662d
Merge branch 'master' into long-online-id-score-info
2021-10-30 14:35:30 +02:00
Dean Herbert
07e3ced315
Fix test scene and remove "impossible" nullable coalesce
2021-10-29 18:22:23 +09:00
Dean Herbert
7db8bdfb7c
Fix fallback logic not considering case where ruleset is not available
...
Occurs only in tests.
2021-10-29 18:16:54 +09:00
Dean Herbert
be0564f732
Update DifficultyIcon
classes to use IBeatmapInfo
2021-10-29 17:05:06 +09:00
Dean Herbert
7583435901
Refactor BeatmapDifficultyCache
to work with IBeatmapInfo
2021-10-29 16:45:10 +09:00
Dean Herbert
3b095e1626
Merge branch 'master' into beatmap-refactor/download-tracker
2021-10-29 11:50:54 +09:00
Dean Herbert
34d4715220
Allow for long
online IDs and implement in ScoreInfo
2021-10-29 11:48:36 +09:00
Dean Herbert
65a7b6776e
Add note regarding OnlineInfo
being temporary
2021-10-28 05:50:22 +09:00
Dean Herbert
7245baba69
Remove IBeatmapSetOnlineInfo
implementation from BeatmapSetInfo
to avoid null cases
2021-10-28 00:50:45 +09:00
Dean Herbert
617e6febb6
Refactor ModelDownloader
to allow for different OnlineID matching
2021-10-27 21:00:46 +09:00
Dean Herbert
f268363924
Update UpdateableBeatmapBackgroundSprite
to accept IBeatmapInfo
2021-10-27 16:38:48 +09:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Bartłomiej Dach
3de994449d
Add support for changing dimensions of difficulty spectrum display
2021-10-26 23:06:52 +02:00
Bartłomiej Dach
1a77e98537
Implement difficulty spectrum display
2021-10-26 23:06:52 +02:00
Dean Herbert
e92def0ba2
Fix LegacyBeatmapEncoder
using incorrect path length value
2021-10-26 17:34:52 +09:00
Dan Balasescu
efe6763226
Merge branch 'master' into move-online-beatmap-metrics
2021-10-26 14:24:40 +09:00
Bartłomiej Dach
5a03e1736e
Merge branch 'master' into update-beatmap-set-status-pill-appearance
2021-10-25 20:26:49 +02:00
Bartłomiej Dach
6802e9ec10
Remove FixedWidth
and add AutoSizeAxes
specs to all usages
2021-10-25 20:24:48 +02:00
Dean Herbert
6adb0f068b
Fix multiple issues with json serialisation of online info (causing tournament failures)
2021-10-25 16:52:50 +09:00
Dean Herbert
2c308f3008
Rename BeatmapMetrics
to APIFailTimes
2021-10-25 15:34:41 +09:00
Dean Herbert
4969ab0599
Add forgotten JsonIgnore
rules on interface types
...
Just to avoid them getting serialised as part of the "new" .osu
serialisation format.
2021-10-25 15:32:18 +09:00
Dean Herbert
20baae9094
Move online metrics out of BeatmapInfo
model
2021-10-25 15:32:18 +09:00
Dean Herbert
045dd94a6e
Move online metrics out of BeatmapSetInfo
model
2021-10-25 15:12:39 +09:00
Dean Herbert
78edc7554e
Fix BeatmapSetInfo
's Status
value being marked as non-databased
2021-10-25 12:05:34 +09:00
Bartłomiej Dach
feedd53a53
Add support for setting fixed size of status pill
2021-10-24 21:37:00 +02:00
Bartłomiej Dach
5ab3337a10
Update beatmap set status pill appearance
2021-10-24 20:40:34 +02:00
Dean Herbert
cc1d759290
Remove unnecessary setters from IBeatmapSetOnlineInfo
interface
2021-10-22 17:48:09 +09:00
Dean Herbert
c580ec865f
APIBeatmapSet.Covers
is never null
2021-10-21 19:34:01 +09:00
Dean Herbert
0fe0b5dc09
APIBeatmap
implements IBeatmapInfo
2021-10-21 19:14:31 +09:00
Dean Herbert
69e7810dad
Enable nullable
and switch classes to structs
2021-10-21 18:54:36 +09:00
Dean Herbert
0335ed6f27
Add missing licence header
2021-10-21 17:14:29 +09:00
Dean Herbert
ff674ca913
Remove unnecessary access modifiers from interface
2021-10-21 17:01:57 +09:00
Dean Herbert
b73bd54ab2
Split out individual pieces into own files
2021-10-21 16:58:42 +09:00
Dean Herbert
32d01f022f
Rename usages which rely on online backing
2021-10-21 16:58:42 +09:00
Dean Herbert
0706ad70fb
Move BeatmapSetOnlineInfo
to an interface type
2021-10-21 16:58:42 +09:00
Dean Herbert
ff2eae4597
Rename confusing variable
2021-10-19 11:37:46 +09:00
Dean Herbert
b3219bb592
Update usages of OnlineID
2021-10-18 16:16:36 +09:00
Dean Herbert
2c5ba1d8e2
Change OnlineID
to non-nullable to allow for indexing in Realm
2021-10-18 15:53:40 +09:00
Dan Balasescu
3604a762d0
Merge branch 'master' into fix-editor-difficulty-name-update
2021-10-15 16:58:01 +09:00
Dean Herbert
e9c3d09e0e
Remove redundant specs
2021-10-15 16:27:16 +09:00
Dean Herbert
a90f40e831
Update one missed instance of PresentImport
2021-10-15 16:00:09 +09:00
Dean Herbert
874d722820
Merge branch 'master' into fix-editor-difficulty-name-update
2021-10-15 11:14:45 +09:00
Dean Herbert
8a4c0c0ac8
Lock one more case of usage
2021-10-14 16:22:43 +09:00
Dean Herbert
060bb1afbd
Add locking around async beatmap (task) retrieval
2021-10-14 15:39:53 +09:00
Dean Herbert
09536cd733
Add logging of WorkingBeatmapCache.Invalidate
calls
2021-10-14 14:05:33 +09:00
Dan Balasescu
e49f1f6e6b
Merge branch 'master' into no-more-difficulty-control-points-info
2021-10-13 20:17:57 +09:00
Dean Herbert
02689a1b60
Use actual BeatmapInfo
rather than PlayableBeatmap.BeatmapInfo
for editor writes
2021-10-13 14:50:12 +09:00
Dean Herbert
1373cc02d7
Shallow clone BeatmapInfo
during conversion process to avoid overwriting fields
2021-10-12 16:43:56 +09:00
Dean Herbert
6b35ccae95
Fix some cases where interface specifications can be used but weren't
2021-10-11 15:06:24 +09:00
smoogipoo
bc37cb6f43
Merge branch 'master' into no-more-difficulty-control-points-info
2021-10-08 18:41:17 +09:00
Dean Herbert
ee66414e4f
Move difficulty copy inside context retrieval
2021-10-07 17:49:13 +09:00
Dean Herbert
d3efec3c04
Remove unnecessary clone operations
2021-10-07 17:22:10 +09:00
Dean Herbert
0df409c050
Move difficulty copy to BeatmapModelManager.Save
2021-10-07 17:16:45 +09:00
Dean Herbert
4ca97bc60a
Merge branch 'master' into difficulty-move-to-beatmap
2021-10-06 16:14:21 +09:00
Dean Herbert
0ab8dcc2a0
Fix taiko weird difficulty multiplier failing on double convert
2021-10-06 15:18:06 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dan Balasescu
80c8612630
Merge pull request #14977 from peppy/fix-working-beatmap-cache-invalidation
...
Fix changes not being reflected immediately after exiting the editor
2021-10-06 13:51:21 +09:00
Dean Herbert
8ffaa491e7
Fix BeatmapModelManager
not receiving WorkingBeatmapCache
2021-10-06 12:55:04 +09:00
Dean Herbert
007b33cd88
Add missing methods to interfaces
2021-10-06 12:55:04 +09:00
Dan Balasescu
e837a3511d
Merge branch 'master' into beatmap-difficulty-more-interface-usage
2021-10-06 12:18:51 +09:00
Dan Balasescu
4bbff2ebf7
Merge branch 'master' into new-interfaces
2021-10-06 11:38:17 +09:00
Dan Balasescu
9491e5a547
Merge pull request #14954 from peppy/rename-result-response
...
Rename `APIRequest.Result` to `Response`
2021-10-06 10:52:33 +09:00
Dean Herbert
4f59fc15a5
Mark BeatmapSet
as nullable for the time being
2021-10-06 05:54:37 +09:00
Dean Herbert
bd84a8b749
Merge branch 'new-interfaces' into beatmap-difficulty-more-interface-usage
2021-10-05 18:21:21 +09:00
Dean Herbert
599d82e383
Avoid returning a live IEnumerable
2021-10-05 17:01:07 +09:00
Dean Herbert
a5aa32811a
Remove null check suppression and add non-null fallback
2021-10-05 14:49:59 +09:00
Dean Herbert
d3b9660148
Move common interface implementations to extension methods
2021-10-05 14:41:14 +09:00
Dean Herbert
b41fa41c85
Rename APIRequest.Result
to Response
2021-10-05 14:28:56 +09:00
smoogipoo
593da79bbc
Further asyncify load process
2021-10-05 11:26:13 +09:00
Dean Herbert
1d99bc280f
Merge branch 'master' into new-interfaces
2021-10-04 20:42:40 +09:00
smoogipoo
031c5a441e
Merge branch 'master' into realtime-pp-display
2021-10-04 20:19:37 +09:00
smoogipoo
4871db2f86
Merge branch 'master' into importer-returns-live
2021-10-04 19:42:36 +09:00
Dean Herbert
f293e008d9
Move BeatmapInfo
's SearchableTerms
implementation to interface
2021-10-04 17:01:02 +09:00
Dean Herbert
51b7dce16f
Remove reference to osu-web-10
2021-10-04 16:55:51 +09:00
Dean Herbert
4df5f93152
Inline single usage of StoryboardFile
to avoid interface default method woes
2021-10-04 16:55:02 +09:00
Dean Herbert
8bfdfe3672
Add literal string marker
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-10-04 16:54:00 +09:00
Dean Herbert
63f0b0c932
Rename out of place interface name
2021-10-04 16:35:55 +09:00
Dean Herbert
916342c837
Merge branch 'master' into importer-returns-live
2021-10-04 16:24:26 +09:00
smoogipoo
69c2b7dc59
Merge branch 'master' into rename-beatmap-info-beatmap-fields
2021-10-04 16:03:22 +09:00
smoogipoo
4e1322effa
Fix typo
2021-10-04 16:02:45 +09:00
Dean Herbert
ec61c3c5ee
Rename all remaining cases
2021-10-03 00:55:29 +09:00
Dean Herbert
20e3f7fec4
Merge branch 'new-interfaces' into beatmap-difficulty-more-interface-usage
2021-10-02 13:08:02 +09:00
Dean Herbert
dcd7d7a709
Add JsonIgnore
rule for StoryboardFile
...
Not sure why this is required, doesn't make much sense.
2021-10-02 03:05:06 +09:00
Dean Herbert
d6dbdc911f
Merge branch 'master' into storyboard-fixes
2021-10-02 00:35:51 +09:00
Dan Balasescu
6a172d54d5
Merge branch 'master' into model-downloader-split
2021-10-01 22:34:39 +09:00
Dan Balasescu
154c412f34
Merge branch 'master' into beatmap-manager-split
2021-10-01 21:46:27 +09:00
Dean Herbert
4c28749d73
Fix incorrect legacy decoder usage
2021-10-01 19:05:08 +09:00
Dean Herbert
3faafd7200
Rename parameter to repeatCount
and add guards
2021-10-01 18:26:29 +09:00
Dean Herbert
0daf8937e3
Add missing xmldoc
2021-10-01 17:36:44 +09:00
Dean Herbert
d6618a99a3
Redirect more methods to interface implementations
2021-10-01 17:36:44 +09:00
Dean Herbert
9dae92e78c
Add missing backlink to BeatmapSet
from Beatmap
and fix non-explicit implementations
2021-10-01 17:22:25 +09:00
Dean Herbert
00e33a1da7
Fix incorrect OnlineID
mappings
2021-10-01 17:06:09 +09:00
Dean Herbert
05996cc2e9
Add changes that got forgotted in branch surgery
2021-10-01 17:04:53 +09:00
Dean Herbert
a92d499d7a
Convert usages of BeatmapDifficulty
to IBeatmapDifficultyInfo
2021-10-01 16:55:50 +09:00
Dean Herbert
8595eb2d11
Switch BeatmapDifficulty
usages to use interface type
2021-10-01 16:55:50 +09:00
Dean Herbert
d309636460
Update all EF based models to implement new read only interfaces
2021-10-01 16:55:50 +09:00
Dean Herbert
619dfe0690
Add new interface base types for models
2021-10-01 16:55:47 +09:00
Dean Herbert
c71cf1e220
Fix incomplete xmldoc
2021-10-01 01:51:31 +09:00
Dean Herbert
3ddb348252
Merge branch 'online-lookup-cache-separation' into beatmap-manager-split
2021-10-01 01:49:31 +09:00
Dean Herbert
2ed28f625a
Pass whole queue in rather than function
2021-10-01 01:46:37 +09:00
Dean Herbert
428c7830d9
Pass online lookup queue in as a whole, rather than function
2021-10-01 01:45:21 +09:00
Dean Herbert
dde19f2e81
Fix unbalanced brackets
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-10-01 01:37:51 +09:00
Dean Herbert
a2e61883e3
Initial push to use ILive
in import process
2021-09-30 22:55:25 +09:00
Dean Herbert
3e3b9bc963
Split out IModelDownloader
and also split apart ScoreManager
2021-09-30 18:25:20 +09:00
Dean Herbert
fd13142a15
Add missing interface to BeatmapManager
2021-09-30 18:21:24 +09:00
Dean Herbert
7a72747d88
Add back optional online lookups
2021-09-30 17:18:39 +09:00
Dean Herbert
90225f2082
Hook up all required interfaces to new BeatmapManager
2021-09-30 17:18:39 +09:00
smoogipoo
84bddf0885
Initial PP counter implementation
2021-09-30 17:00:24 +09:00
Dean Herbert
d21139b03e
Split out database portion from BeatmapManager
2021-09-30 15:43:49 +09:00
Dean Herbert
e7e0473323
Split out WorkingBeatmapCache
from BeatmapManager
2021-09-30 15:40:41 +09:00
Dean Herbert
8a6501fa58
Add basic component level xmldoc
2021-09-30 14:46:07 +09:00
Dean Herbert
6ffd9fdcfa
Split out BeatmapOnlineLookupQueue
from BeatmapManager
2021-09-30 14:46:01 +09:00
Dean Herbert
46bafb6252
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-28 13:53:56 +09:00
Dean Herbert
d4310f5d9a
Move database connection string operations local
...
In line with framework changes in
https://github.com/ppy/osu-framework/pull/4793 .
2021-09-27 17:32:41 +09:00
Bartłomiej Dach
80197bae48
Revert not decoding legacy difficulty points on scrolling rulesets for now
2021-09-18 15:32:08 +02:00
Bartłomiej Dach
76ccdd1340
Collect and sort points from nested objects before extracting
2021-09-18 14:38:38 +02:00
Bartłomiej Dach
8026968939
Move difficulty -> effect point conversion back to decoder
2021-09-18 14:38:38 +02:00
Bartłomiej Dach
5969e2b852
Add TODO comment about lack of in-gameplay support
2021-09-13 00:13:07 +02:00
Bartłomiej Dach
1be8cb452f
Make new beatmaps' samples match playback rate by default
2021-09-12 16:57:21 +02:00
Bartłomiej Dach
af7c2b93e6
Add encoding support for SamplesMatchPlaybackRate
2021-09-12 16:47:38 +02:00
Bartłomiej Dach
cd181452be
Add decoding support for SamplesMatchPlaybackRate
2021-09-12 16:45:27 +02:00
Bartłomiej Dach
925b455330
Add "samples match playback rate" setting to beatmap info
2021-09-12 16:40:52 +02:00
Dean Herbert
943e0d49f7
Handle control point flattening of nested hit objects
2021-09-10 17:29:09 +09:00
Dean Herbert
34f875187c
Copy time between ControlPoint
s
2021-09-10 14:36:38 +09:00