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