Salman Ahmed
2fa8b61f3c
Handle completion user state updates during spectating
2022-08-24 10:02:21 +03:00
Salman Ahmed
7e5086c8d7
Fix spectator client not handling multiple watch calls properly
2022-08-24 10:02:21 +03:00
Dean Herbert
b4eede61fb
Use readonly
instead of get-only
2022-08-24 15:28:18 +09:00
Dean Herbert
0b271fe4b3
Fix incorrect IsRunning
value
2022-08-24 15:27:31 +09:00
Dean Herbert
b6254a1f25
Remove unnecessary casting
2022-08-24 15:23:31 +09:00
Dean Herbert
a86fc6f248
Change running state of SpectatorPlayerClock
using IsRunning
2022-08-24 15:17:56 +09:00
Dean Herbert
0c9a4ec13c
Don't expose MasterClock
in SpectatorClockSyncManager
2022-08-24 15:13:08 +09:00
Dean Herbert
995e6664b6
Rename spectator clock sync classes
2022-08-24 15:13:08 +09:00
Dean Herbert
31f657fe01
Remove ISpectatorPlayerClock
interface
...
Too many levels of redirection.
One interface with one implementation is not useful, IMO.
2022-08-24 15:12:57 +09:00
Dean Herbert
882dd93942
Remove ISyncManager
interface
...
Too many levels of redirection.
One interface with one implementation is not useful, IMO.
2022-08-24 15:12:57 +09:00
Dean Herbert
22963ab951
Fix multiplayer spectator getting stuck
2022-08-24 15:12:57 +09:00
Khang
c9f364d6a0
Document why beatLength can be NaN
2022-08-24 02:10:19 -04:00
Dean Herbert
ec31f37ff7
Accept MasterGameplayClockContainer
rather than generic clock
2022-08-24 14:51:14 +09:00
Dean Herbert
85fbe7abca
Fix multiplayer spectator getting stuck
2022-08-24 13:11:53 +09:00
Khang
c1ced85b5e
Move GenerateTicks to LegacyDifficultyControlPoint and remove support for NaN slider velocity support for other rulesets (at least for now)
2022-08-23 14:07:18 -04:00
Andrew Hong
3cedd1cd1c
Merge branch 'master' into add-date-created-sort
2022-08-23 12:00:30 -04:00
Dean Herbert
c840977acb
Fix filtering potentially not running after new items added
2022-08-23 20:42:20 +09:00
Dean Herbert
29fed0c4a3
Avoid setting the source clock until gameplay is ready to start
...
Without this change, the audio track may audibly seek during load
proceedings.
2022-08-23 18:34:17 +09:00
Dean Herbert
ec61a94dc9
Merge branch 'master' into no-gameplay-clock-gameplay-offset
2022-08-23 17:36:06 +09:00
Dean Herbert
db004c9d9f
Fix collection dropdown potentially overwriting value change with schedule hotfix
2022-08-23 17:33:53 +09:00
Khang
fbe8de2757
Disable the GetHashCode warning instead of using bindables
2022-08-23 00:57:25 -04:00
Dean Herbert
553897f2f0
Remove AddClock
method to CreateManagedClock
2022-08-23 13:52:43 +09:00
Dean Herbert
1191b6c080
Remove unused Source_Set
implementation on ISpectatorPlayerClock
2022-08-23 13:44:41 +09:00
Khang
a81672f3dc
Use an infinite tick distance instead of directly disabling tick generation for SliderEventGenerator
2022-08-22 23:31:24 -04:00
Khang
8f708c1dcf
Turn GenerateTicks into a bindable to pass code quality tests
2022-08-22 22:43:44 -04:00
Khang
9f08c474ca
Treat NaN slider velocity timing points as 1.0x but without slider ticks
2022-08-22 21:58:38 -04:00
Khang
e8d4bc4497
Allow NaN during beatmap parsing if desired
2022-08-22 21:04:26 -04:00
Andrew Hong
55f1b43329
Removed check
2022-08-22 13:41:36 -04:00
HiddenNode
1098e24c40
Improved UprightUnscaledContainer
2022-08-22 14:24:52 +01:00
Dan Balasescu
c59298f0ce
Enable NRT
2022-08-22 21:55:04 +09:00
Dean Herbert
489e172a76
Simplify track start/stop/paused tracking
2022-08-22 19:43:18 +09:00
Dan Balasescu
5d3d8681d4
Invert creation of clocks in multi spectator
2022-08-22 19:14:06 +09:00
Dean Herbert
22072ee16a
Include framework configuration in sentry output
2022-08-22 17:03:30 +09:00
Dean Herbert
c86a75aa5f
Update OsuConfigManager
in line with ConfigManager
logging changes
2022-08-22 17:03:20 +09:00
Andrew Hong
bcab7aea26
Merge branch 'master' into add-date-created-sort
2022-08-22 04:02:46 -04:00
Andrew Hong
c2036d3893
Moved filter exclusion
2022-08-22 03:39:46 -04:00
Dean Herbert
758a554180
Add basic check for correct ruleset API version
2022-08-22 16:35:08 +09:00
Dean Herbert
f5710d8000
Add ruleset API versioning
2022-08-22 16:35:08 +09:00
Dan Balasescu
3fb3a18e68
Merge pull request #19906 from peppy/fix-editor-crash-mobile
...
Fix editor crashing on mobile releases
2022-08-22 16:31:19 +09:00
Andrew Hong
09ef13908c
Adjust to reviews
2022-08-22 03:20:27 -04:00
Dean Herbert
058d67f8e8
Merge pull request #19695 from naoei/ruleset-localization
...
Change most ruleset-accessible string types to Localisable strings
2022-08-22 16:13:23 +09:00
Dean Herbert
19bba143ee
Fix editor crashing on mobile releases
2022-08-22 15:57:24 +09:00
Dan Balasescu
0815b01b75
Merge pull request #19783 from bdach/mod-select/presets-dont-open-customisation
...
Fix selecting preset containing Difficulty Adjust automatically opening customisation panel
2022-08-22 15:44:00 +09:00
Dan Balasescu
2bc0a68911
Merge pull request #19830 from peppy/test-ruleset-compatibility
...
Test ruleset compatibility during initial startup to avoid runtime errors
2022-08-22 15:24:46 +09:00
Dean Herbert
d199b3b100
Update GetVariantName
to also support localisation
2022-08-22 14:51:00 +09:00
Dean Herbert
9d31f61ca9
Don't throw when a ruleset type is completely missing
2022-08-22 14:35:44 +09:00
Dean Herbert
594353fca1
Merge pull request #19905 from smoogipoo/fix-text-boldening
...
Fix language change removing mod column bold text
2022-08-22 14:15:22 +09:00
Dean Herbert
e6b669db8e
Elaborate with example of GameplayClockContainer
managing its own Stop
state
2022-08-22 14:14:44 +09:00
Dean Herbert
af2e82d7d5
Move operation of setting GameplayClockContainer.StartTime
to Reset
call
2022-08-22 14:11:06 +09:00
Dean Herbert
17a1df281c
Fix incorrect implicit null specification for user audio offset bindable
2022-08-22 14:03:51 +09:00
Dean Herbert
ba23ce75c2
Make FramedBeatmapClock.Track
non-null
2022-08-22 14:02:41 +09:00
Dean Herbert
85d0b7fc57
Reword class xmldoc to better explain that offset application is optional
2022-08-22 14:02:20 +09:00
Dan Balasescu
b81c7ffc60
Merge pull request #19868 from peppy/fix-test-deadlocks
...
Add safeties to avoid deadlock in `SubmittingPlayer`
2022-08-22 13:17:41 +09:00
Dan Balasescu
e1fa959f0b
Fix language change removing mod column bold text
2022-08-22 13:00:47 +09:00
Andrew Hong
c6a739f5a8
Add date submitted sorting
2022-08-21 23:09:33 -04:00
Bartłomiej Dach
aa15e84bea
Adjust rounding in mod select difficulty multiplier to match song select footer
...
The 0.01 `Precision` spec on `DifficultyMultiplierDisplay.Current` would
cause the difficulty multiplier to use a different midpoint rounding
strategy than `double.ToString()`, which is the one that the song select
footer relies on. For example, a value of 0.015 would be rounded down
to 0.01 by `double.ToString()`, but rounded up to 0.02
by `BindableDouble`.
Fix the discrepancy by just deleting the `Precision` spec. Since the
value of the bindable would go through `ToLocalisableString(@"N2")`
anyway, it was redundant as is.
Fixes #19889 .
2022-08-21 23:15:49 +02:00
Ryuki
5cf54a788a
Code cleanup for CPS counter
2022-08-21 16:00:58 +02:00
naoei
29ef1c8db8
Check if StatisticItem.Name is null or empty
2022-08-20 21:48:53 -04:00
naoei
9386d352b8
Make StatisticItem.Name not nullable
2022-08-20 21:48:35 -04:00
Nao
189a407cb1
Merge branch 'master' into ruleset-localization
2022-08-20 21:39:10 -04:00
Dean Herbert
8566e93c72
Guard against SubmittingPlayer
potentially getting stuck waiting on request forever
2022-08-20 17:19:17 +09:00
Dean Herbert
a1e849c4db
Ensure that DummyAPIAccess
runs all queued tasks on disposal
2022-08-20 16:22:35 +09:00
Dean Herbert
da407aa827
Merge branch 'master' into kps
2022-08-20 15:24:58 +09:00
Dean Herbert
cbdd870ecf
Merge pull request #19693 from its5Q/editor-localisation
...
Add localisation support for beatmap editor setup
2022-08-20 11:51:57 +09:00
Dean Herbert
339f0b0cd2
Merge branch 'master' into no-gameplay-clock-gameplay-offset
2022-08-19 23:01:09 +09:00
Dean Herbert
7bf318541c
Reword comment to hopefully read better
2022-08-19 20:57:55 +09:00
Dean Herbert
c3c44c19cd
Use CompositeComponent
in various locations
2022-08-19 20:43:15 +09:00
Dean Herbert
41321521e5
Update resources
2022-08-19 20:40:05 +09:00
Dean Herbert
426c4c9bf7
Update framework
2022-08-19 20:39:53 +09:00
Dean Herbert
3f0da14065
Delay start operation by one frame to allow children to see initial start time
2022-08-19 17:39:51 +09:00
Jamie Taylor
41408a3106
Add audio feedback for text selection
2022-08-19 15:51:27 +09:00
its5Q
4c24d8ed58
Improve string consistency
2022-08-19 03:17:05 +10:00
Dean Herbert
3eb1cda6aa
Reorganise call order of Start
/ Reset
to make more sense
2022-08-19 01:46:36 +09:00
Ryuki
3de35a1518
Update calculator and tests to match changes on clocks
2022-08-18 18:40:02 +02:00
Dean Herbert
1d774f3f12
Remove redundant ProcessFrame
calls
...
Of note, I'm not sure whether the `IsPaused` check was meaningful, but
it's not reimplemented in the new `FramedBeatmapClock`.
2022-08-19 01:39:02 +09:00
Dean Herbert
7bc96431a7
Remove unnecessary virtual
spec from GameplayClockContainer.Seek
2022-08-19 01:39:01 +09:00
Dean Herbert
0e228791c0
Remove unnecessary Reset
call in MultiSpectatorScreen
2022-08-19 01:39:01 +09:00
Dean Herbert
43879633db
Ensure setting a StartTime
on a GameplayClockContainer
always resets to the new time
2022-08-18 18:54:10 +09:00
Dean Herbert
343efa1d11
Split OffsetCorrectionClock
out of MasterGameplayClockContainer
2022-08-18 18:54:10 +09:00
Dean Herbert
2c6fd1ec6e
Fix `GameplayClockContainer potentially resetting external seeks
2022-08-18 18:54:10 +09:00
Dean Herbert
bcc153f738
Add xmldoc and reorganise FramedBeatmapClock
2022-08-18 18:54:10 +09:00
Dean Herbert
6003afafc7
Use FramedBeatmapClock
in GameplayClockContainer
2022-08-18 18:54:10 +09:00
Dean Herbert
32e127a6fa
Add FramedBeatmapClock
...
Expose `IsCoupled` in `FramedBeatmapClock` for now to provide editor compatibility
2022-08-18 18:54:10 +09:00
Dan Balasescu
fa167b1d12
Merge pull request #19779 from peppy/no-gameplay-clock
...
Remove all remaining usage of `GameplayClock`
2022-08-18 18:52:57 +09:00
Dean Herbert
b0a740071e
Centralise logging of failed ruleset loads
2022-08-18 16:14:38 +09:00
Dean Herbert
e0edaf996f
Test ruleset compatibility during initial startup to avoid runtime errors
...
As we continue to break the ruleset API, it makes more sense to
proactively check known changes and bail early during ruleset loading to
avoid a user experiencing a crash at a random point during execution.
This is a RFC and needs to be tested against known broken rulesets.
There might be some other calls we want to add in addition to the ones
I've listed.
2022-08-18 16:03:38 +09:00
Dan Balasescu
7512c126b7
Upgrade LocalisationAnalyser and disable warning
2022-08-18 15:08:24 +09:00
Dean Herbert
9735728cf6
Reverse conditionals to better define intent in addSourceClockAdjustments
2022-08-18 15:08:09 +09:00
Bartłomiej Dach
d06959e1dd
Update incorrect xmldoc
2022-08-17 22:03:35 +02:00
Bartłomiej Dach
3d14b14cfe
Use alternative method for checking panel readiness to eliminate bool flag
2022-08-17 21:56:11 +02:00
Dean Herbert
e7ddbc41c8
Merge branch 'master' into no-gameplay-clock
2022-08-17 22:21:10 +09:00
Dean Herbert
e1e6be039a
Don't create destination stream if backup source doesn't exist
2022-08-17 18:20:47 +09:00
Dean Herbert
fca076b988
Fix edge case of realm backup cascading failure
2022-08-17 17:17:22 +09:00
Dean Herbert
a5ac69a554
Update various dependencies
2022-08-17 16:57:56 +09:00
Dean Herbert
7191fbb6d6
Update framework
2022-08-17 16:40:07 +09:00
Dan Balasescu
0cf3c5570a
Merge pull request #19800 from peppy/fix-editor-ear-rape
...
Fix slider ticks playing back at infinite rate while making changes to a slider in the editor
2022-08-17 15:50:58 +09:00
Dean Herbert
20256aad11
Merge branch 'master' into no-gameplay-clock
2022-08-17 15:21:20 +09:00
Dean Herbert
21b364cd77
Fix nullref in tests as initialBeatmap
may be null
2022-08-17 14:48:00 +09:00
Dean Herbert
6b9dec5996
Restore original event flow to allow for OnSuspend
case to work correctly
2022-08-17 14:32:21 +09:00
Dean Herbert
8ce50e98a6
Move delegate debounce logic to Editor
itself
2022-08-17 14:04:57 +09:00
Dan Balasescu
8b5ac55fca
Remove newline
2022-08-17 13:48:06 +09:00
Dean Herbert
d9346abb9c
Tweak intro timings more and ensure non-theme tracks play from preview point
2022-08-17 13:20:40 +09:00
Dean Herbert
37799e3b31
Allow preparing preview point without looping
2022-08-17 13:20:24 +09:00
Bartłomiej Dach
3109066e34
Rename {Requires -> Pending}Configuration
2022-08-16 22:45:24 +02:00
Bartłomiej Dach
6bfdfeb153
Refactor mod panel selection logic to avoid overwriting
2022-08-16 22:41:35 +02:00
Bartłomiej Dach
1861f34427
Merge branch 'master' into editor-setup-no-state-change
2022-08-16 21:46:43 +02:00
Dan Balasescu
e689d4be96
Merge pull request #19530 from peppy/store-modified-time
...
Add `BeatmapInfo.LastUpdate` to track the time of local changes
2022-08-16 20:20:41 +09:00
Dan Balasescu
24fd411720
Merge pull request #19594 from BlauFx/improve_retry_behaviour
...
Skip song intro on quick restart
2022-08-16 20:18:12 +09:00
Dan Balasescu
57f48ca4d0
Merge pull request #19802 from peppy/improve-intro-timings
...
Improve intro timings when not using osu! theme
2022-08-16 20:07:16 +09:00
Dean Herbert
5ac314077a
Improve intro timings when not using osu! theme
...
Roughly as proposed in https://github.com/ppy/osu/discussions/19687 .
2022-08-16 18:19:30 +09:00
Dean Herbert
1a7ddc0040
Fix re-importing existing collections not correctly adding new items
2022-08-16 16:43:05 +09:00
Dean Herbert
ee153a345c
Add a few more overlooked beatmap save states on setup screen modifications
2022-08-16 16:31:56 +09:00
Dean Herbert
5238a5c115
Merge branch 'master' into editor-setup-no-state-change
2022-08-16 16:28:29 +09:00
Dean Herbert
9d2c2b71cf
Change conditional to check for insertions in addition to modifications
...
It is possible that the import process itself marks the previous
beatmaps as deleted due to an overlap in metadata or otherwise.
2022-08-16 16:21:36 +09:00
Dean Herbert
c8fdfd298c
Merge branch 'master' into carousel-maintain-selection-over-update
2022-08-16 16:04:32 +09:00
Dean Herbert
11f38e539f
Rename property to LastLocalUpdate
2022-08-16 16:01:19 +09:00
Dean Herbert
c7db4a532c
Merge branch 'master' into store-modified-time
2022-08-16 15:53:51 +09:00
Dean Herbert
ea50936d71
Fix slider ticks playing back at infinite rate while making changes to a slider in the editor
2022-08-16 15:27:58 +09:00
its5Q
e870ac6456
Fix code quality for CI
2022-08-16 15:51:54 +10:00
Dean Herbert
63819648df
Fix up flow of actual skip operation
2022-08-16 14:40:02 +09:00
Dean Herbert
9a1a7bae89
Make test actually test things
2022-08-16 14:40:02 +09:00
Dean Herbert
6761f869f9
Modify flow to avoid weird bindable and value resetting
2022-08-16 14:17:35 +09:00
Dean Herbert
c9baadcf88
Merge branch 'master' into improve_retry_behaviour
2022-08-16 13:06:04 +09:00
Bartłomiej Dach
10daac6752
Only open mod customisation panel on explicit selection of single mod
2022-08-15 20:38:23 +02:00
Bartłomiej Dach
f860bc11ee
Fix several schedule-related issues arising from new column addition
2022-08-15 20:38:16 +02:00
Bartłomiej Dach
5ff2e41a55
Add preset column to mod select test scene
2022-08-15 18:38:37 +02:00
its5Q
797a8da996
Replace osu-web strings with new strings and merge to single file
2022-08-16 01:14:16 +10:00
Dean Herbert
61a8873266
Ensure GameplayClockContainer
's FramedClock
is always non-null
2022-08-15 20:22:36 +09:00
Dean Herbert
1696a905ba
Reduce exposed properties in GameplayClockContainer
2022-08-15 20:22:36 +09:00
Dean Herbert
704568ae3b
Remove remaining usage of GameplayClock
2022-08-15 20:22:36 +09:00
Dean Herbert
43442dbf65
Merge branch 'even-less-gameplay-clock' into even-nicer-frame-stability-clock
2022-08-15 20:22:30 +09:00
Dean Herbert
87760bbc06
Fix IsCatchingUp
not being in correct state
2022-08-15 20:17:48 +09:00
Dean Herbert
1fc3d005c0
Seal FrameStabilityContainer
...
No one should ever derive from this class. It is already too complex.
2022-08-15 19:31:02 +09:00
Dean Herbert
fff2b57905
Tidy up and document FrameStabilityContainer
2022-08-15 19:28:12 +09:00
Dean Herbert
9bc2e91de0
Fix incorrect handling of reference clocks when no parent IGameplayClock
is available
2022-08-15 19:19:19 +09:00
Dean Herbert
828b6f2c30
Remove unnecessary setClock
shenanigans
2022-08-15 19:19:19 +09:00
Dean Herbert
27569e2ed5
Remove FrameStableClock
(and redirect usages to FrameStabilityContainer
)
2022-08-15 19:19:19 +09:00
Dean Herbert
cc982d374c
Cache self rather than GameplayClock
2022-08-15 18:30:53 +09:00
Dean Herbert
c5f8529d20
Mark unused methods as NotImplemented
for safety
2022-08-15 18:30:53 +09:00
Dean Herbert
f81c7644b4
Make GameplayClockContainer
also an IGameplayClock
and expose to remaining tests
2022-08-15 18:30:53 +09:00
Dean Herbert
c8764cb333
Move all usage of GameplayClock
to IGameplayClock
2022-08-15 18:30:53 +09:00
Dean Herbert
6d78218142
Update usages of GameplayClockContainer.GameplayClock
to access properties directly
2022-08-15 18:08:49 +09:00
Dean Herbert
224f3eaa84
Make GameplayClockContainer
non-abstract
and use in MultiSpectatorPlayer
2022-08-15 18:08:49 +09:00
Dean Herbert
95c1b488a7
Add non-null assertion to FrameStabilityContainer
2022-08-15 18:08:49 +09:00
Dean Herbert
623e90a7b2
Fix div-by-zero in SongProgress
when no object duration could be calculated
2022-08-15 15:05:35 +09:00
Nao
c940f5abcb
Merge branch 'master' into ruleset-localization
2022-08-14 15:17:44 -04:00
naoei
45e9eda9e7
Localise hit result name
2022-08-14 14:57:02 -04:00
naoei
18ce784ae0
Allow StatisticItem's name param to be nullable
2022-08-14 14:51:35 -04:00
Ryuki
2aa3a1b50d
Rename all "KeysPerSecond" usages to "ClicksPerSecond"
2022-08-14 20:12:11 +02:00
Ryuki
9dc806506e
Make ActionListener
and KeysPerSecondCalculator
not rely on events to add timestamps
2022-08-14 19:31:14 +02:00
Ryuki
d5f10cbb9d
Revert 787dee24
and initialize calculator in HUDOverlay
2022-08-14 18:53:00 +02:00
Bartłomiej Dach
05ddfe7522
Merge branch 'master' into editor-setup-no-state-change
2022-08-14 18:21:31 +02:00
basseX
383afe04f3
Remove not needed override
2022-08-14 15:15:36 +02:00
basseX
932becc4b2
Remove CommentMarkdownTextFlowContainer
and rather use base-class OsuMarkdownTextFlowContainer
2022-08-14 10:11:49 +02:00
basseX
b05acb0073
Make CommentMarkdownTextFlowContainer
render images
2022-08-13 21:32:24 +02:00
Ryuki
e08f71797e
Change displayed metric from "KPS" to "clicks/s"
2022-08-13 04:27:26 +02:00
Dan Balasescu
c02990ad67
Merge pull request #19718 from peppy/fix-playlist-imported-items
...
Fix playlist overlay showing new imports when they don't match collection filter
2022-08-12 23:27:26 +09:00
Dan Balasescu
e6ecdf7457
Merge pull request #19715 from peppy/relax-mod-multiplier
...
Adjust various mod multipliers to avoid competition with normal scores
2022-08-12 23:12:57 +09:00
Dan Balasescu
9d1b0b5836
Revert sealing
2022-08-12 22:32:27 +09:00
Dean Herbert
e5e9841652
Apply multiple other mod debuffs as decided in pull request discussion
2022-08-12 18:58:09 +09:00
Dean Herbert
b76e5757e1
Fix InSelectedCollection
not being applied to newly imported beatmaps
2022-08-12 15:06:34 +09:00
Dean Herbert
5111bad86c
Refactor TestScenePlaylistOverlay
to use realm for testing
...
Removes the dual-purpose flow which existed only for testing.
2022-08-12 15:06:34 +09:00
Dean Herbert
38afc53bad
Update interactive visual test runs to use development directory
2022-08-12 13:40:29 +09:00
Dean Herbert
ac4213ecee
Adjust relax mod multiplayer to 0.5x
...
Has previously been discussed internally. Probably good to get this out
before the next full reprocess of scores server-side.
The multiplier here was @smoogipoo's suggested value. I'd be willing to
go lower if this is seen at too high, but it should be a round number to
make it easy for users to understand the max score available to them.
2022-08-12 12:30:13 +09:00
Andrew Hong
667b700a28
Merge branch 'master' into open-profile-hotkey
2022-08-11 13:04:19 -04:00
Dan Balasescu
d88f247594
Fix possible null reference inspection
2022-08-11 20:38:08 +09:00
Ryuki
9b252b1d81
Make KeysPerSecondCalculator
dependency in HUDOverlay
nullable
2022-08-11 11:58:30 +02:00
Ryuki
d29cba80e9
Remove useless comment in KeysPerSecondCounter
2022-08-11 11:01:16 +02:00
Ryuki
787dee249d
Move KeysPerSecondCalculator
instantiation from HUDOverlay
to Player
...
This prevents messing with *future* Skin (de)serialization
2022-08-11 10:37:16 +02:00
Ryuki
3c6461b9e4
Remove KPS acronym usage
2022-08-11 10:01:39 +02:00
Dean Herbert
865d63f768
Refactor APIAccess
main loop to read better
2022-08-11 15:43:39 +09:00
Dean Herbert
47196b19a5
Stop setting Online
state in handleRequest
...
This is already handled amicably by the `Failing` -> `Connecting` flow.
Having this set in `handleRequest` throws things off, potentially
leading to the `Online` state change before the user has been populated.
2022-08-11 14:36:30 +09:00
Dean Herbert
7ec67c28b9
Set Online
state sooner in connection process
...
This isn't really required as such, but feels more correct. There was no
reason for it to wait for the friend population to complete before
deeming things to be "online".
2022-08-11 14:35:56 +09:00
Dean Herbert
e01383b138
Tidy up user passing logic
2022-08-11 13:17:17 +09:00
Dean Herbert
e5b534bb26
Add thread safety to APIAccess.LocalUser
2022-08-11 12:45:26 +09:00
Ryuki
0a94fb4039
Make KPS counter strictly depending only on KPS calculator
...
`KeysPerSecondCounter` now depends on `KeysPerSecondCalculator` via the
`BackgroundDependencyLoaderAttribute` method, making it appear only in a
gameplay context without requiring `GameplayClock` without using it.
2022-08-11 00:46:39 +02:00
Ryuki
46e372cb99
Add more readiness checks in KeysPerSecondCalculator
2022-08-11 00:43:15 +02:00
Ryuki
9e80d3f71c
Re-adjust timespan conditions in KeysPerSecondCalculator
2022-08-11 00:42:22 +02:00
Andrew Hong
60abe83398
Remove newline
2022-08-10 17:56:36 -04:00
naoei
7cbe2fa522
Enable localisation for SettingSourceAttribute
2022-08-10 16:12:16 -04:00
naoei
6e13cf82e8
Don't render statistic header if display string is null
2022-08-10 16:05:34 -04:00
naoei
1e356f6137
Revert localisation for GetDisplayNameForHitResult
...
Came across an issue where `LeaderboardScoreTooltip` attempts to capitalize all letters for the `displayName`.
Unsure if I should completely ignore it and localise it anyway.
2022-08-10 16:03:59 -04:00
naoei
60dae70a18
Change mod description type to LocalisableString
2022-08-10 15:54:48 -04:00
naoei
8cb2e11766
Change most ruleset-accessible string types to Localisable strings
2022-08-10 15:51:11 -04:00
its5Q
2499b7f0cd
Add localisation support for beatmap editor setup
2022-08-11 03:53:20 +10:00
Andrew Hong
11d480997a
Merge branch 'master' into open-profile-hotkey
2022-08-10 13:34:53 -04:00
Andrew Hong
396860d9e8
Move Hide() to OsuGame
2022-08-10 13:32:33 -04:00
Dan Balasescu
1721a91168
Merge pull request #19661 from peppy/overlay-key-binding-organisation
...
Reorganise global bindings and split out overlay bindings to make things easier to find
2022-08-10 21:18:28 +09:00
Dan Balasescu
98c7138803
Merge pull request #19586 from peppy/realm-versioning-for-debug
...
Version realm files for debug executions
2022-08-10 21:17:51 +09:00
Dan Balasescu
f9c6dc314b
Merge pull request #19678 from peppy/fix-file-comparisons-many-places
...
Fix audio track not correctly advancing when changing between certain beatmaps
2022-08-10 20:38:14 +09:00
Dan Balasescu
69cbf4185b
Match class name to file
2022-08-10 19:53:40 +09:00
Dan Balasescu
76fea25668
Merge pull request #19646 from its5Q/settings-localisation
...
Add missing localisation for settings enums
2022-08-10 18:51:52 +09:00
Dean Herbert
6e9031b03e
Update framework
2022-08-10 17:49:39 +09:00
its5Q
8f5bd437f6
Rename enum member to be more like the other
2022-08-10 18:41:53 +10:00
its5Q
231c331690
Rename keys to match enum members
...
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2022-08-10 18:31:57 +10:00
Dan Balasescu
c151cb4443
Merge pull request #19677 from peppy/fix-mobile-import-crash
...
Fix crash when attempting to import on mobile platforms
2022-08-10 16:11:38 +09:00
Dean Herbert
ef10d074e8
Update framework
2022-08-10 16:07:47 +09:00
Dean Herbert
ac99c1ad69
Migrate the majority of existing file lookups to use new extension methods
2022-08-10 16:01:16 +09:00
Dean Herbert
5f10ec1955
Add extension methods for case insensitive file lookups
2022-08-10 15:48:25 +09:00
Dean Herbert
ddffa9b1bd
Fix crash when attempting to import on mobile platforms
...
Regressed with NRT application to this file. It's probably the first
time we've actually hit this due to an optional DI that is actually not
available outside of tests.
2022-08-10 15:32:43 +09:00
Andrew Hong
6f1fdd4c34
Merge branch 'master' into open-profile-hotkey
2022-08-10 01:31:37 -04:00
Dan Balasescu
87133b9cc5
Merge pull request #19669 from peppy/abort-load-player-more
...
Handle cancellation at more points during `Player` initialisation
2022-08-10 13:53:27 +09:00
Dan Balasescu
888c4c8e08
Merge pull request #19662 from peppy/startup-correct-username
...
Use a placeholder user with the correct username during login process
2022-08-10 13:09:37 +09:00
Andrew Hong
8c7ede6111
Add proper toggling
2022-08-09 14:43:37 -04:00
Andrew Hong
7ed489b56d
Add hotkey to Toolbar
2022-08-09 14:10:38 -04:00
Andrew Hong
b4fc2a0fc8
Merge branch 'master' into open-profile-hotkey
2022-08-09 13:41:21 -04:00
Dean Herbert
ad410fc88b
Update resources
2022-08-10 01:50:23 +09:00
Dean Herbert
e8fef6e05c
Update framework
2022-08-10 01:36:39 +09:00
its5Q
abca3d1b2a
Prefix common strings for context
2022-08-10 00:35:19 +10:00
Dean Herbert
a5081826b7
Handle cancellation at more points during Player
initialisation
...
As discussed in discord, this will help avoid null references during
cancellation which can otherwise be quite confusing to debug.
2022-08-09 23:25:19 +09:00
Dan Balasescu
4107049b08
Fix host room status showing ended after playing
2022-08-09 21:43:10 +09:00
Dan Balasescu
41af03dec5
Merge pull request #19597 from frenzibyte/hotfix-multi-spectator-results-screen
...
Fix multi-spectator potentially getting stuck for passed players (hotfix)
2022-08-09 21:11:10 +09:00
HiddenNode
2367dc9610
Improved KeepUprightAndUnscaled
2022-08-09 13:06:11 +01:00
Dean Herbert
551e1cf7ff
Revert ordering and reword comment
2022-08-09 19:26:24 +09:00
Dean Herbert
940629f2f1
Fix database storing order being changed by previous changes
2022-08-09 18:18:03 +09:00
Dean Herbert
106932b906
Add null check in TestPlayer
's disposal code to avoid cascading test failure
2022-08-09 18:15:50 +09:00
Dan Balasescu
efc4a129d9
Merge pull request #19658 from peppy/user-button-better-display
...
Display connecting / failing states on toolbar user display
2022-08-09 17:59:28 +09:00
Dean Herbert
4a312d5658
Use a placeholder user with the correct username during connecting process
...
This allows for various components (like gameplay) to obtain a correct
username even if the API is not yet in a connected state. The most
common case is during startup, where a connection may not have been
established yet, but the user's username was restored from their config
file.
By making the change, local scores will now have the correct username
(although avatar etc. will be missing, which I think it fine) even if
the API is not yet connected. Previously, they would show up as "Guest".
2022-08-09 17:13:09 +09:00
Dean Herbert
f9d0cc3c4e
Change APIAccess.IsLoggedIn
to also return true
when connecting
...
All usages of this are made with the intention of showing data when an
api is going to eventually become available. In the case of a login
failure, components are also able to display a correct state.
With this change, it makes online components display in a more correct
state during startup or initial logging in phase.
2022-08-09 17:11:44 +09:00
Dean Herbert
beb3d41f0c
Fix unsafe usage of APIAccess.LocalUser
in BeatmapListingOverlay
2022-08-09 17:11:44 +09:00
Andrew Hong
ce67820d87
Merge branch 'master' into open-profile-hotkey
2022-08-09 04:10:27 -04:00
Andrew Hong
aee18135a9
Switch to toggle
2022-08-09 04:09:22 -04:00
Dean Herbert
961f5d4acc
Reorganise global bindings section to be easier to find things
2022-08-09 17:08:31 +09:00
Dan Balasescu
d80db2aee7
Merge pull request #19639 from peppy/fix-fps-damping
...
Fix incorrect FPS damping implementation
2022-08-09 17:03:55 +09:00
Dean Herbert
a71c2bbe28
Split overlay toggles into own section in key bindings
...
Things were getting hard to find..
2022-08-09 17:01:38 +09:00
Andrew Hong
6903ce1bcc
Merge branch 'master' into open-profile-hotkey
2022-08-09 03:25:41 -04:00
Andrew Hong
a705c4f5d2
Moved ShowProfile to the bottom of the enum
2022-08-09 03:17:55 -04:00
Andrew Hong
04108a749e
Rename translation key
2022-08-09 03:03:14 -04:00
Dean Herbert
47ca812faf
Merge pull request #19656 from smoogipoo/fix-gameplay-test-rerun
...
Fix gameplay tests crashing when run multiple times
2022-08-09 16:01:39 +09:00
Dean Herbert
32852e5b21
Fix potentially thread-unsafe LocalUser
usage
2022-08-09 16:01:04 +09:00
Andrew Hong
ededaed5ef
Remove unused import
2022-08-09 02:58:28 -04:00
Dean Herbert
5d8bd1de28
Share localised strings with expanded display message
2022-08-09 15:57:16 +09:00
Andrew Hong
3473347f35
Lowercase "p"
2022-08-09 02:56:12 -04:00
Dean Herbert
3f8cedff3a
Add tooltips showing current connecting status
2022-08-09 15:51:27 +09:00
Dean Herbert
4da9482a3e
Add ability for loading layer to not block input
2022-08-09 15:51:11 +09:00
Dean Herbert
c35b4ef914
Display connecting / failing states on toolbar user display
2022-08-09 15:51:10 +09:00
Andrew Hong
f65b7ef058
Add keybind for showing profile
2022-08-09 02:49:53 -04:00
Dean Herbert
c7313ac371
Allow LoadingLayer
's spinning circle to scale smaller than before
2022-08-09 15:34:11 +09:00
Dan Balasescu
00bdd52cff
Move to TestPlayer and add null check
2022-08-09 15:05:40 +09:00
Dan Balasescu
e79052c8a0
Merge pull request #19651 from bdach/mod-select/mod-preset-buggy-sounds
...
Fix spurious sample playbacks from already-removed mod preset panels
2022-08-09 15:00:47 +09:00
Dan Balasescu
6c671434ec
Fix gameplay tests crashing when run multiple times
2022-08-09 14:41:36 +09:00
Ryuki
b52a07c16a
Use DI to provide dependencies for KPS Calculator and improve input
...
gathering
KPS Calculator now uses DI to retrieve the clocks. Using `HUDOverlay` it
is now cached for `KeysPerSecondCounter`s to resolve it. This also
allows to make an "Attach" flow like `KeyCounter`.
2022-08-08 21:54:06 +02:00
BlauFx
0afa3a5ec8
Fix xml doc
2022-08-08 21:20:09 +02:00
Bartłomiej Dach
f74fb3491e
Use alternative implementation of preset panel cleanup
2022-08-08 21:08:54 +02:00
Bartłomiej Dach
e77f47e489
Merge branch 'master' into fix-collection-import-notification
2022-08-08 21:05:48 +02:00
BlauFx
f6e65cf1af
Improve implementation
2022-08-08 20:53:05 +02:00
Bartłomiej Dach
a0a6e1faee
Fix spurious sample playbacks from already-removed panels
2022-08-08 20:30:55 +02:00
Bartłomiej Dach
f21a51aa24
Simplify mirror copy of task logic in ModColumn
2022-08-08 19:20:50 +02:00
Bartłomiej Dach
00333fb0d2
Change ?? false
test to == true
for legibility
2022-08-08 19:19:13 +02:00
its5Q
9f043e725f
Fix CI code quality
2022-08-08 22:06:23 +10:00
its5Q
5080d62e77
Add missing localisation for settings enums
2022-08-08 21:51:23 +10:00
BlauFx
fac2596eee
Change type from BindableBool to IBindable<bool>
2022-08-08 13:38:52 +02:00
BlauFx
cd68134565
Call skip method directly
2022-08-08 13:10:28 +02:00
Dean Herbert
cbe5cb5d03
Merge branch 'master' into carousel-maintain-selection-over-update
2022-08-08 18:01:26 +09:00
Dean Herbert
070d156e89
Simplify task logic in ModPresetColumn
2022-08-08 16:13:52 +09:00
Dean Herbert
4f7d63be29
Ignore very long periods of no frame drawing when showing FPS counter ms value
2022-08-08 15:21:49 +09:00
Dean Herbert
81c079c937
Fix incorrect damping implementation
...
I'm not sure what I was thinking with the weighting stuff. It wasn't
correct. Can most easily be noticed if suspending the app on iOS for a
considerable period, or pausing debugger.
2022-08-08 15:21:49 +09:00
Dean Herbert
6459dbd9e5
Fix collection import not showing progress notification
2022-08-08 14:56:16 +09:00
its5Q
68e7000620
Fix FPS counter disappearing when hovered over
2022-08-08 15:52:47 +10:00
Dean Herbert
237f72efbc
Add missing null check on AudioManager
2022-08-08 13:31:57 +09:00
Dean Herbert
a8dee17513
Fix missing DummyRenderer
in skin resources tests
2022-08-08 13:06:01 +09:00
Dean Herbert
f1691882e2
Fix incorrect argument passing to ToMod
2022-08-08 12:56:18 +09:00
Dean Herbert
8b990ef3c9
Update framework
2022-08-08 12:31:55 +09:00
Dean Herbert
e1189da824
Merge branch 'master' into irenderer-glwrapper
2022-08-08 12:31:53 +09:00
Dean Herbert
0537c471dc
Merge pull request #19582 from smoogipoo/apimod-json-cleanup
...
Don't serialise empty mod settings
2022-08-08 11:49:08 +09:00
Bartłomiej Dach
7d6efaebbe
Add maintenance settings section for mod presets
2022-08-07 16:20:31 +02:00
Bartłomiej Dach
839409d7ac
Add preset column to solo mod select overlay
2022-08-07 16:20:31 +02:00
Bartłomiej Dach
b318bbd5e6
Allow non-homogenous column types in mod select overlay
2022-08-07 16:20:31 +02:00
Bartłomiej Dach
0287c49ca8
Implement user selection logic for mod presets
2022-08-07 16:20:20 +02:00
HiddenNode
cfd07cb366
Set InvalidationSource to parent and clean up
2022-08-07 15:04:11 +01:00
Bartłomiej Dach
b1dcd7821c
Automatically toggle preset panels if selected mods match
2022-08-07 15:30:20 +02:00
HiddenNode
ed86255e2b
Use UprightUnscaledContainer instead of KeepUprightAndUnscaled
2022-08-07 13:20:22 +01:00
HiddenNode
0bfa6fa975
Implement UprightUnscaledContainer
2022-08-07 13:18:29 +01:00
BlauFx
bb344e064f
Add xml docs
2022-08-07 13:31:26 +02:00
BlauFx
09230304a4
Improve implementation
2022-08-07 13:20:29 +02:00
Dean Herbert
c31e257a1f
Clean up pending deletion presets on startup
2022-08-07 15:16:33 +09:00
Dean Herbert
4a95638756
Merge branch 'master' into mod-overlay/delete-preset
2022-08-07 12:34:25 +09:00
Dean Herbert
5946124278
Merge pull request #19612 from bdach/mod-overlay/common-delete-dialog
...
Unify implementations of deletion dialogs
2022-08-07 12:18:03 +09:00
Ryuki
b2557a8d2d
Refactor KPS
...
- Remove '#nullable disable' in KeysPerSecondCalculator and
KeysPerSecondCounter
- Remove KeysPerSecondCalculator IDisposable implementation
- Make KeysPerSecondCalculator static instance initialized once by
KeysPerSecondCounters
- Auto transfer dependencies from KeysPerSecondCounter to
KeysPerSecondCalculator using Resolved properties
- Add internal reset logic to KeysPerSecondCalculator and make it
independent from Player
- Use GameplayClock.TrueGameplayRate to get real-time rate. If 0 then it
defaults to the last non 0 rate if no such mod is enabled
2022-08-07 00:53:00 +02:00
Bartłomiej Dach
9b3183b2b4
Implement mod preset deletion flow
2022-08-06 21:58:55 +02:00
Bartłomiej Dach
a0d093be5c
Extract common implementation of delete dialog
2022-08-06 21:04:12 +02:00
BlauFx
bd43a9e96e
Add missing type specification
2022-08-06 18:49:07 +02:00
BlauFx
fa6d55b5b5
Remove redundant lambda signature parentheses
2022-08-06 18:47:11 +02:00
Bartłomiej Dach
ab1b38242f
Reorder enum cases to match web order
2022-08-06 18:34:30 +02:00
Bartłomiej Dach
6a9c30c47a
Fix some more wrong icon colours
2022-08-06 18:34:00 +02:00
Bartłomiej Dach
2ba127b6fc
Fix wrong icon for approval event
2022-08-06 18:30:49 +02:00
Bartłomiej Dach
f1e0dd2da3
Match approval type-dependent icon appearance with web
2022-08-06 18:29:24 +02:00
Bartłomiej Dach
f3ecd73e0b
Add references to web source in recent activity icon
2022-08-06 18:23:15 +02:00
BlauFx
0d418559bc
Skip song intro only in case of a quick restart
2022-08-06 17:02:45 +02:00
BlauFx
e411a2d187
Revert reduced wait time commit
2022-08-06 15:12:36 +02:00
LukynkaCZE
3000d9b9c6
Inline everything in RecentActivityIcon
2022-08-06 07:16:34 +02:00
LukynkaCZE
bd27995c71
Merge branch 'ppy:master' into add-missing-icons-to-recent-profile-section
2022-08-06 05:55:51 +02:00
Salman Ahmed
84ef24c341
Fix multi-spectator potentially getting stuck for passed players
2022-08-06 05:41:26 +03:00
BlauFx
445f921756
Move IsSkippable event into load method
2022-08-05 23:21:03 +02:00
BlauFx
0b886a79f1
Merge branch 'ppy:master' into improve_retry_behaviour
2022-08-05 23:16:35 +02:00
BlauFx
d8d7423698
Reduce "wait time" in case restarting the map
2022-08-05 23:04:43 +02:00
BlauFx
99e07aa09a
Skip intro if the map gets restarted
2022-08-05 23:01:52 +02:00
BlauFx
6717f0606c
Add property to SkipOverlay
2022-08-05 23:00:37 +02:00
Ryuki
0886137e39
Prevent KeysPerSecondCounter from NRE when no instance is initialized
2022-08-05 21:03:00 +02:00
HiddenNode
b46bc5d65b
Remove empty line
2022-08-05 14:57:33 +01:00
Ryuki
24c29b7e2f
Do not add KPS calculation when gameplay rate is 0
2022-08-05 15:51:07 +02:00
HiddenNode
0243f8d6ac
Clean up
2022-08-05 14:28:15 +01:00
Dan Balasescu
cf362a6b4f
Merge pull request #19529 from peppy/locally-modified-pill
...
Show "locally modified" pill when local modifications have been made
2022-08-05 21:12:13 +09:00
HiddenNode
12ef99a1a1
Fix text position
2022-08-05 12:56:08 +01:00
HiddenNode
8618d9ea0d
Implement GrowToFitContainer
2022-08-05 12:55:41 +01:00
HiddenNode
15fb4d8dd5
Change Implementation and name of KeepUprightAndUnstretched
2022-08-05 12:53:14 +01:00
Dan Balasescu
802dc90cb1
Adjust using directives for vertices
2022-08-05 20:37:33 +09:00
Dan Balasescu
c4b9b2a14b
Merge branch 'master' into irenderer-glwrapper
2022-08-05 20:35:06 +09:00
Dean Herbert
4544df5978
Leave client.realm
around to handle pull requests without this change merged
2022-08-05 18:27:29 +09:00
Dean Herbert
ad3d00b1dc
Don't add version suffixes when running unit tests
2022-08-05 18:23:41 +09:00
Dean Herbert
3c84b1a389
Change order of application to use original client.realm
last
2022-08-05 17:48:51 +09:00
Dean Herbert
84a3fbd25c
Version realm files for debug executions
...
To make it easier for developers to test out pull requests which bump
the realm schema version, realm files are now stored with the schema
version in the filename.
Note that this means any changes made to a newer version will not be
applied to previous ones.
2022-08-05 17:36:49 +09:00
Dean Herbert
94ec653420
Add same load-cancel safeties to ensure tracks are disposed in card PlayButton
2022-08-05 14:26:01 +09:00
Dean Herbert
6823282604
Fix PlayButton
potentially not disposing an unused PreviewTrack
during load
2022-08-05 14:15:27 +09:00
Dean Herbert
786af81274
Fix PreviewTrack
not disposing its owned audio Track
2022-08-05 14:15:01 +09:00
Dan Balasescu
0de00e9b3f
Don't serialise empty mod settings
2022-08-05 14:00:53 +09:00
Ryuki
42d1bdfc95
Move KPS calculation to a standalone class
2022-08-05 04:17:01 +02:00
Dean Herbert
0d73bfa451
Merge pull request #19575 from smoogipoo/solo-score-info-json-cleanup
...
Clean up SoloScoreInfo serialised output
2022-08-04 23:19:21 +09:00
Dan Balasescu
2d9da07eb6
Trim zero values from hit statistics
2022-08-04 19:27:50 +09:00
Dan Balasescu
8ff7770a71
Omit irrelevant data from SoloScoreInfo serialisation
2022-08-04 19:11:39 +09:00
Dean Herbert
094eaafd43
Split out common conditional check into local static
method
2022-08-04 17:26:54 +09:00
Dan Balasescu
6632367c6d
Ensure skin samples are looked up in correct order
2022-08-04 14:48:12 +09:00
Bartłomiej Dach
ca1b4689cb
Automatically focus name textbox upon add preset popover open
2022-08-03 21:26:35 +02:00
Bartłomiej Dach
159d3b032c
Rename locals for legibility
2022-08-03 21:23:31 +02:00
Bartłomiej Dach
82d3fbd51b
Split AddPresetPopover
to separate file
2022-08-03 21:22:55 +02:00
Bartłomiej Dach
ac9321204c
Merge branch 'master' into mod-overlay/create-preset
2022-08-03 21:21:52 +02:00
Salman Ahmed
7c45c571a0
Merge branch 'master' into more-beat-sync-dependence
2022-08-03 20:22:42 +03:00
Salman Ahmed
844430502b
Replace parantheses with nullable-bool equality operation
2022-08-03 20:11:08 +03:00
Dean Herbert
87cc2db624
Merge branch 'master' into improve-download-limit-message
2022-08-03 20:17:02 +09:00
Dean Herbert
d3954fc583
Use existing localised error message
2022-08-03 20:15:46 +09:00
Dean Herbert
a32149fda1
Convert interface methods to extension methods
2022-08-03 20:07:55 +09:00
Salman Ahmed
4063f92381
Merge branch 'master' into fix-legacy-song-progress-mouse-blocking
2022-08-03 12:12:58 +03:00
Dean Herbert
16ff8d5c38
Use different variable source
2022-08-03 17:47:32 +09:00
Dean Herbert
6ad6561e1c
Fix LegacySongProgress
incorrectly blocking mouse input from gameplay
...
Closes #19555 .
2022-08-03 17:42:29 +09:00
Dean Herbert
f743dc623f
Change migration logic to ignore realm pipe files regardless of database filename
2022-08-03 17:37:30 +09:00
Dan Balasescu
9306dd5e30
Apply changes from removal of GLWrapper
2022-08-03 15:02:22 +09:00
Bartłomiej Dach
add2971eb4
Implement preset creation flow with test coverage
2022-08-02 22:05:54 +02:00
Bartłomiej Dach
7251389e43
Add localisations for add preset button
2022-08-02 22:05:34 +02:00
Bartłomiej Dach
059a465fe8
Add border to popover for better visual contrast
2022-08-02 22:03:33 +02:00
Bartłomiej Dach
1b3074d098
Implement popover for creating mod presets
2022-08-02 22:03:33 +02:00
Bartłomiej Dach
085080576a
Add button for creating new mod presets
2022-08-02 22:03:32 +02:00
HiddenNode
dbb77705da
Merge branch 'fix_text_orientation' into fix_progress_bar_info
2022-08-02 19:00:43 +01:00
HiddenNode
bc21a2ed56
Remove unnecessary using directive
2022-08-02 17:41:17 +01:00
HiddenNode
78a98cdb9c
Prevent TextSprites inside SongProgressInfo from being stretched or flipped
2022-08-02 17:37:31 +01:00
Dean Herbert
de186f67e0
Limit metadata updates to once per frame
2022-08-02 22:02:30 +09:00
Dan Balasescu
b4e55f7309
Apply IRenderer changes
2022-08-02 19:50:57 +09:00
Dan Balasescu
dc49862466
Merge branch 'irenderer-shaders' into irenderer-textures
2022-08-02 19:25:24 +09:00
Dan Balasescu
a2a913ab52
Merge branch 'irenderer-batches' into irenderer-textures
2022-08-02 19:25:08 +09:00
Dean Herbert
258ad7c6b9
Tidy up kiai time access
2022-08-02 18:18:40 +09:00
Dean Herbert
cc4cde2c79
Improve IBeatSyncProvider
interface and reduce beatmap track dependence
2022-08-02 17:59:18 +09:00
Dean Herbert
efa3c3b757
Fix multiple cases of mutations at editor setup screen not triggering a state save
2022-08-02 16:47:37 +09:00
Dean Herbert
7022c6382d
Add localisation support for local modification strings
2022-08-02 16:30:14 +09:00
Dean Herbert
8cb02f47eb
Mark BeatmapSet.Status
as modified when any beatmap is modified, rather than all
2022-08-02 16:08:58 +09:00
Dean Herbert
df76f9f4da
Fix some additional metadata being updated when it shouldn't (with local changes)
2022-08-02 15:49:22 +09:00
Dean Herbert
34ffc51c51
Avoid clearing chat overlay textbox when pressing "back" key binding
...
Generally this is expected behaviour for usages of focused text boxes
(ie. to clear search content), but not so much here.
Addresses https://github.com/ppy/osu/discussions/19403#discussioncomment-3230395 .
2022-08-02 13:56:03 +09:00
Dan Balasescu
fc0914bf77
Merge pull request #19536 from frenzibyte/playlists-settings-leak
...
Fix playlist settings reference leak due to unsafe binding
2022-08-02 13:30:55 +09:00
Dan Balasescu
4295dc3cb9
Merge pull request #19535 from naipofo/overlay-filter-rank
...
Hide F rank from the beatmap overlay
2022-08-02 13:06:27 +09:00
Dean Herbert
4adc8375e9
Add more xmldoc and avoid BeatmapSet
status being set when it shouldn't be
2022-08-02 12:12:02 +09:00
HiddenNode
df85bd74d7
Keep TextSprites in SongProgressInfo upright
2022-08-01 21:46:37 +01:00
HiddenNode
bc059cc1d2
Implemented KeepUpright
2022-08-01 21:46:01 +01:00
Bartłomiej Dach
298efa5391
Fix broken ShearedButton
autosizing logic
2022-08-01 22:04:16 +02:00
NaiPofo
3356909026
Merge branch 'master' into overlay-filter-rank
2022-08-01 21:54:44 +02:00
Salman Ahmed
7354f9e6ba
Remove localisation for now
2022-08-01 22:05:52 +03:00
Dean Herbert
c0e5f11c90
Merge pull request #19532 from frenzibyte/fix-new-items-sort-stability
...
Fix newly imported beatmaps not using correct comparer for sorting
2022-08-02 02:20:51 +09:00
Salman Ahmed
7e9d11ee24
Enable NRT on playlists settings overlay
2022-08-01 20:15:08 +03:00
Salman Ahmed
c851e3d8f3
Fix playlist settings reference leak due to unsafe callback binding
2022-08-01 20:08:18 +03:00
notmyname
6686b09549
Hide F rank from beatmap overlay
2022-08-01 18:54:00 +02:00
Salman Ahmed
fc7fc3d673
Fix newly imported beatmaps not using correct comparer for sorting
2022-08-01 19:13:57 +03:00
Dean Herbert
d7a06abcab
Add BeatmapInfo.LastUpdate
to track the time of local changes
2022-08-02 00:53:07 +09:00
Dean Herbert
013cf7a80a
Fix DateAdded
not being set to a sane value when creating a new beatmap in the editor
2022-08-02 00:53:07 +09:00
Dean Herbert
0fcae08d38
Show "locally modified" pill when local modifications have been made
2022-08-02 00:52:38 +09:00
Dean Herbert
01cc9bd7ef
Merge pull request #19479 from frenzibyte/carousel-update-on-resume
...
Fix song select not updating selected beatmap card on editor resume
2022-08-02 00:48:18 +09:00
Salman Ahmed
7c9f8648a5
Merge branch 'master' into remove-nullable-disable-in-the-audio-namespace
2022-08-01 15:25:12 +03:00
andy840119
6cccb6b848
Remove canBeNull: true
.
2022-08-01 19:45:15 +08:00
Salman Ahmed
3ff0327d91
Display readable message when reaching download limit
2022-08-01 14:22:54 +03:00
Salman Ahmed
2a127c6ef8
Merge branch 'master' into fix-tags-overflow
2022-08-01 12:40:43 +03:00
Dan Balasescu
d4eec9122f
Merge pull request #19516 from peppy/fix-editor-track-disposal-crash
...
Fix editor potentially playing a track post-disposal
2022-08-01 18:12:21 +09:00
Dean Herbert
14c2348df7
Merge pull request #19514 from peppy/dont-throw-copy-failure-migration
...
Fix migration failing on single file copy failure
2022-08-01 17:43:05 +09:00
Gutyina Gergő
c65747d1b8
Use masking instead of scrollable container to prevent tags overflow
2022-08-01 10:36:53 +02:00
Dan Balasescu
5f9c3b42e8
Merge pull request #19513 from peppy/isolate-development-storage
...
Isolate development builds' storage from release builds
2022-08-01 17:30:25 +09:00
Dan Balasescu
1d27c4f020
Merge pull request #19504 from peppy/skin-serialisation-test-coverfage
...
Add test coverage of deserialisation of skin layouts
2022-08-01 17:17:16 +09:00
Dean Herbert
cc8a71b65d
Re-query file existence before failing a recursive copy operation during migration
2022-08-01 17:01:19 +09:00
Dean Herbert
59210ecc9d
Revert "Fix migration failing on single file copy failure"
...
This reverts commit fc8835d43a
.
2022-08-01 16:57:50 +09:00
Dean Herbert
6e7c298aaf
Fix changes to audio / background not triggering an editor state change
2022-08-01 16:53:49 +09:00
Dean Herbert
2f60f91a0e
Fix editor potentially using a track post-disposal
...
This changes the editor to track the current track as it is *loaded* by
`MusicController`, rather than haphazardly following the current global
`WorkingBeatmap` (with a potentially unloaded track) or relying on local
immediate-load behaviour (as implemented in `ResourcesSection`).
2022-08-01 16:53:49 +09:00
Dean Herbert
fc8835d43a
Fix migration failing on single file copy failure
...
No longer throw if copying of single files fails during data migration.
Aiming to fix https://github.com/ppy/osu/runs/7601653833?check_suite_focus=true , which could also affect end users. I've left a limit before an exception is still thrown, to handle cases like the user running out of disk space (where we probably *do* want to bail, so they can continue to use their still-intact original storage location).
If this isn't seen as a good direction, an alternative will be to make the migration code aware of the structure of the temporary files created by `Storage` (but doesn't guarantee this will cover all cases of such temporary files – there could for isntance be metadata files created by the host operating system).
Another option would be to mark those temporary files as hidden and skip any hidden files during iteration.
2022-08-01 15:02:39 +09:00
Dean Herbert
8ee4f1e60b
Merge pull request #19510 from bdach/mod-overlay/presets-persistence
...
Add persistence of mod presets to realm
2022-08-01 14:43:52 +09:00
Dean Herbert
a5f48e336a
Isolate development builds' storage from release builds
2022-08-01 14:38:02 +09:00
Dean Herbert
5b98a73edc
Apply nullability to SkinComponentToolbox
and split out reflection method to get all skinnable components
2022-08-01 14:04:08 +09:00
Bartłomiej Dach
85f77abee1
Fix code quality inspection about ambiguous equality
2022-07-31 23:53:46 +02:00
Bartłomiej Dach
345f103119
Migrate mod preset column to use realm
2022-07-31 23:53:45 +02:00
notmyname
fa3b9ee32f
remove unneded guard
2022-07-31 23:42:20 +02:00
Bartłomiej Dach
cbabc4886c
Convert ModPreset
to realm object
2022-07-31 22:10:15 +02:00
Gutyina Gergő
98214beb6c
Prevent overflow on beatmap info using scrollable container
2022-07-31 21:24:41 +02:00
notmyname
57b43e0065
Stop capturing arrow keys on Playlist
2022-07-31 19:12:29 +02:00
andy840119
094793bbe3
Mark the GetTrack() return type as nullable.
2022-07-31 22:01:30 +08:00
andy840119
6c964dee30
Rename the nullable disable annotation in the Audio namespace and mark some properties as nullable.
2022-07-31 22:00:14 +08:00
Ryuki
89855cc1d6
Change KPS Counter implementation base and add better replay integration
...
The counter implementaiton is now list based, and will not invalidate
previous hits by removing them but by testing if they are within the 1
second span, allowing better integration with replays and spectators.
2022-07-31 01:29:57 +02:00
Dean Herbert
93b783d9ea
Fix previous skins not loading due to namespace changes
2022-07-31 03:25:38 +09:00
Salman Ahmed
faefda9143
Fix song select not updating selected beatmap card on editor resume
2022-07-30 19:47:42 +03:00
Dean Herbert
6ad86ce5b7
Run collection import process asynchronously
...
Actually required to avoid deadlocking..
2022-07-31 01:06:57 +09:00
Dean Herbert
80ffa2cf20
Move collection database rather than deleting post-migration for safety
2022-07-31 00:54:00 +09:00
Dean Herbert
8e06d55960
Fix collection migration incorrectly running asynchronously
2022-07-31 00:53:39 +09:00
Susko3
38a8b9cf0a
Add battery info for desktop platforms
2022-07-30 14:26:19 +02:00
Dean Herbert
43e612f6d4
Merge pull request #19455 from peppy/confirm-playlist-discard
...
Add confirmation dialog when about to discard a playlist
2022-07-30 19:17:49 +09:00
Salman Ahmed
8ca8484f0e
Fix failing tests
2022-07-30 11:49:33 +03:00
Salman Ahmed
369ab10212
Fix exit confirmation dialog not blocking all exit cases
2022-07-30 11:00:31 +03:00
Dean Herbert
eea211eb45
Update framework
2022-07-30 02:46:39 +09:00
Salman Ahmed
2500e5c533
Merge branch 'master' into fix-summary-kiai-ranges
2022-07-29 19:38:28 +03:00
Dan Balasescu
e06f39a69f
Apply IRenderer shader changes
2022-07-30 01:29:11 +09:00
Dan Balasescu
09979d44aa
Apply DrawNode batching changes
2022-07-29 23:32:09 +09:00
Dean Herbert
acf9ad1429
Apply nullability to EffectPointVisualisation
2022-07-29 23:26:38 +09:00
Salman Ahmed
3bc1774c87
Merge branch 'master' into pie-chart-progress
2022-07-29 16:54:59 +03:00
Salman Ahmed
905bbdc8ee
Remove caching of GameplayClockContainer
in favour of GameplayClock
...
Also fixes `SongProgress` being displayed in skin editor on non-gameplay
screens, due to `GameplayClock` not marked as a required dependency.
2022-07-29 16:45:29 +03:00
Dan Balasescu
155dac55d0
Apply DrawNode parameter changes
2022-07-29 22:33:34 +09:00
Salman Ahmed
3f72e76348
Expose StartTime
from gameplay clock
2022-07-29 16:18:05 +03:00
Dean Herbert
8f1e3b0154
Fix editor summary timeline not responding to kiai changes correctly
2022-07-29 19:31:49 +09:00
Dan Balasescu
70420e6238
Merge pull request #19440 from peppy/bypass-local-metadata-cache
...
Fix beatmap updater potentially using outdated local metadata
2022-07-29 17:33:53 +09:00
Dean Herbert
9d457535c6
Add confirmation dialog when about to discard a playlist
...
The confirmation will only show if items have been added to the
playlist.
Closes https://github.com/ppy/osu/issues/19444 .
2022-07-29 17:11:37 +09:00
Dean Herbert
eb92c35335
Merge pull request #19442 from smoogipoo/fix-beginplaying-misordering
...
Move spectator begin/end playing to SubmittingPlayer
2022-07-29 16:09:50 +09:00
Dean Herbert
cb52b696ed
Merge branch 'master' into bypass-local-metadata-cache
2022-07-29 16:05:54 +09:00
Dean Herbert
2ff6ff06d3
Use tuple to better explain new bool
parameter
2022-07-29 16:05:41 +09:00
Dan Balasescu
aaa6f963bd
Fix potential test failures due to Setup/SetUpSteps ordering
2022-07-29 15:27:39 +09:00
Dean Herbert
fd09155990
Revert blocking call when sending spectator frames
...
There are a lot of these requests, and we don't really care about
waiting on them to finish sending. This may have negatively affected
send performance for users with very high latency.
Reverts part of 0533249d11
.
Addresses concerns in https://github.com/ppy/osu/discussions/19429#discussioncomment-3276400 .
2022-07-29 12:24:54 +09:00
Ryuki
2df24019fd
Merge branch 'master' into kps
2022-07-28 18:38:09 +02:00
Ryuki
b2e7da5aa0
Add basic Queue based implementation of KPS
2022-07-28 18:37:12 +02:00
Dean Herbert
3005ff1b9f
Merge branch 'master' into pie-chart-progress
2022-07-28 22:19:27 +09:00
Dan Balasescu
a59d7f6710
Merge branch 'master' into collections-track-beatmap-updates
2022-07-28 22:05:34 +09:00
Dan Balasescu
aa03df905f
Merge pull request #19441 from peppy/test-working-beatmap-unfuck
...
Reduce calls to `LoadTrack` by implicitly running on test/dummy classes
2022-07-28 22:05:25 +09:00
Dan Balasescu
11e0022fad
Merge branch 'master' into realm-collections
2022-07-28 21:00:08 +09:00
Dan Balasescu
ce694123eb
Move spectator begin/end playing to SubmittingPlayer
2022-07-28 20:44:04 +09:00
Dean Herbert
4b140e1f5a
Adjust metrics
2022-07-28 18:50:46 +09:00
Dean Herbert
86c2b7e449
Apply nullability to DefaultSongProgress
and clean up more stuff
2022-07-28 18:37:17 +09:00
Dean Herbert
ea027eda46
Move initial show to base implementation and add transition for legacy version
2022-07-28 18:29:49 +09:00
Dean Herbert
bfa026879c
Remove pointless null check
2022-07-28 18:28:03 +09:00
Dean Herbert
d5e5761892
Fix DefaultSongProgress
graph not resetting if time is in intro
2022-07-28 18:25:24 +09:00
Dean Herbert
7108553883
Tidy up various things everywhere
2022-07-28 18:25:14 +09:00
Dean Herbert
a21aee4e9c
Reduce calls to LoadTrack
by implicitly running on test/dummy classes
2022-07-28 18:11:40 +09:00
Dean Herbert
628a30193f
Remove incorrect TrackLoaded
override from TestWorkingBeatmap
2022-07-28 17:49:17 +09:00
Dan Balasescu
1da9830145
Merge pull request #19435 from peppy/remove-beatmap-manager-ruleset-store
...
Remove unused `RulesetStore` from `BeatmapManager` constructor
2022-07-28 17:46:12 +09:00
Dean Herbert
8cb4fb35e0
Rename parameter to read better (and still use local cache if no online API is available)
2022-07-28 17:08:59 +09:00
Dean Herbert
c35da62224
Add flow for bypassing local cache lookups when refreshing beatmap metadata
2022-07-28 16:33:51 +09:00
Dean Herbert
17a3fd30fb
Move scheduler from OnlineLookupQueue
to BeatmapUpdater
2022-07-28 16:32:22 +09:00
Nitrous
0d36907cad
apply code quality fixes
2022-07-28 15:30:45 +08:00
Nitrous
bca3994d91
set FirstHitTime
and LastHitTime
once
2022-07-28 15:25:12 +08:00
Dean Herbert
2b9d46d803
Remove unused RulesetStore
from BeatmapManager
constructor
2022-07-28 16:19:05 +09:00
Nitrous
db62d4be3a
apply suggestions
...
- refactor `SongProgress`
- make`UpdateProgress` more readable
- enable NRT on new classes
- refactor `TestSceneSongProgress` to use `GameplayClockContainer`
2022-07-28 15:15:41 +08:00
Dan Balasescu
c1aaf27c54
Link to correct model in xmldoc
2022-07-28 16:02:19 +09:00
Dean Herbert
525e4a2019
Fix crash in DrawableRoomPlaylistItem
context menu creation due to incorrect enumeration casting
2022-07-28 15:51:18 +09:00
Dean Herbert
452d82f292
Add more comprehensive xmldoc for beatmap model classes
2022-07-28 15:41:28 +09:00
Dean Herbert
070f56c30c
Add collection transfer logic to beatmap import-as-update flow
2022-07-28 15:03:23 +09:00
Dean Herbert
2209afd0e8
Mark Live
methods as InstantHandleAttribute
2022-07-28 15:03:08 +09:00
Dean Herbert
ca68574473
Make NotificationOverlay
dependency optional in CollectionSettings
2022-07-28 14:35:27 +09:00
Dean Herbert
392cb352cc
Force alphabetical ordering for now
2022-07-28 14:07:42 +09:00
Dean Herbert
da06467891
Add missing realm subscription cleanup
2022-07-28 13:57:21 +09:00
Dean Herbert
ad482b8afc
Tidy up naming of collection dropdowns
2022-07-28 13:57:21 +09:00
Dean Herbert
226eefcc5c
Add note about hash storage
2022-07-28 13:57:21 +09:00
Dean Herbert
1669208a54
Add migration of existing collections database
2022-07-28 13:57:21 +09:00
Dean Herbert
34a2d1a6e1
Fix ManageCollectionsDialog
and remove weird placeholder logic
2022-07-28 13:57:21 +09:00
Dean Herbert
67c7f324ee
Simplify CollectionFilterDropdown
filter flow weirdness
2022-07-28 13:57:21 +09:00
Dean Herbert
aa65b73f19
Merge branch 'master' into add-notif-externalbutton
2022-07-28 12:17:36 +09:00
Dean Herbert
f44a4c8652
Reorder file content to match expectations
2022-07-28 12:13:47 +09:00
Dean Herbert
f01c397220
Apply nullability
2022-07-28 12:12:46 +09:00
Andrew Hong
f097064eea
Adjust to reviews
2022-07-27 21:52:38 -04:00
Andrew Hong
ac39d3a142
"Copied URL" -> "URL copied"
2022-07-27 21:52:28 -04:00
Nitrous
9088caa377
move LegacyComboCounter
to osu.Game.Skinning
2022-07-28 08:36:26 +08:00
Nitrous
45c11f2b7b
account for gameplay start time
2022-07-28 08:01:38 +08:00
Micahel Kelly
dd315ff97b
Adds hard-delete for a beatmap diff
2022-07-27 21:21:16 +10:00
Dean Herbert
804bb33aed
Hook up remaining data flows
2022-07-27 19:35:09 +09:00
Dean Herbert
438067a18b
Convert realm data propagation to more correctly use Live<T>
...
wip
2022-07-27 19:35:09 +09:00
Dean Herbert
41393616d8
Replace BeatmapCollection
with RealmBeatmapCollection
2022-07-27 19:35:09 +09:00
Dean Herbert
9c543fef48
Remove CollectionManager
2022-07-27 18:45:33 +09:00
Micahel Kelly
3febd6d644
Dialogue touchups
2022-07-27 19:23:55 +10:00
Micahel Kelly
e6fad601cc
Adds delete difficulty option to editor
2022-07-27 19:15:43 +10:00
Nitrous
a222278710
remove unused using
2022-07-27 16:01:35 +08:00
Nitrous
37e642b0bd
make SongProgress
abstract
...
- move unrelated logic to `DefaultSongProgress`
- make `LegacySongProgress` inherit `SongProgress`
2022-07-27 15:19:21 +08:00
Nitrous
a12676c25d
scale down graph from bleeding through border
2022-07-27 14:35:18 +08:00
Andrew Hong
2d4655f61e
Add Toast Notification to Copy URL
2022-07-27 02:25:40 -04:00
Dean Herbert
6b73f7c7ec
Split out legacy import path from realm manager
2022-07-27 15:04:09 +09:00
Dean Herbert
e6a3659581
Guard against NewModifiedIndices
being empty
2022-07-27 14:23:47 +09:00
Dean Herbert
24d75612e2
Always attempt to follow selection, even if difficulty name / metadata change
2022-07-27 14:18:53 +09:00
Dean Herbert
d8e605d8aa
Fix broken tests due to badly reimplemented copy-pasted code
2022-07-27 13:58:01 +09:00
Dean Herbert
62ca3aada6
Transfer TODO comment across to copy-pasted implmentation
2022-07-27 13:53:27 +09:00
Dean Herbert
b803ec543f
Remove unused combo
DI retrieval
2022-07-27 13:50:03 +09:00
Dean Herbert
8105d4854a
Fix beatmap carousel not maintaining selection if currently selected beatmap is updated
2022-07-27 13:33:48 +09:00
Nitrous
842ab3c5c1
remove unused using
2022-07-27 09:41:58 +08:00
Nitrous
3abf44da91
Merge branch 'master' into pie-chart-progress
2022-07-27 08:53:23 +08:00
Nitrous
a2320aeb27
replace SongProgress
with LegacySongProgress
2022-07-27 08:52:27 +08:00
Nitrous
6b0f3674c3
implement LegacySongProgress
2022-07-27 08:51:55 +08:00
Dean Herbert
c30e8047ab
Merge pull request #19375 from novialriptide/contextmenu-external-beatmap
...
Add ContextMenu to beatmap external link
2022-07-26 19:06:10 +09:00
Dan Balasescu
b47f674ddb
Merge pull request #19400 from peppy/button-select-allow-more
...
Always allow selecting the top-most button using the select binding
2022-07-26 18:49:42 +09:00
Dan Balasescu
bc60552694
Merge pull request #19402 from peppy/debugger-attached-audio-warning-disable
...
Don't show audio playback issue notification if debugger is attached
2022-07-26 18:49:33 +09:00
Dan Balasescu
8f7dff5c2c
Merge pull request #19378 from peppy/beatmap-update-test
...
Add separate beatmap update flow to handle edge cases better
2022-07-26 18:49:20 +09:00
Dean Herbert
e782590b3c
Don't show audio playback issue notification if debugger is attached
...
I've hit this countless times recently when debugging during the startup
procedure.
2022-07-26 18:20:46 +09:00
Dean Herbert
9173271900
Fix new update pathway not actually being used
2022-07-26 17:58:09 +09:00
Dean Herbert
1539fa704b
Always allow selecting the top-most button using the select binding
2022-07-26 17:46:23 +09:00
Dean Herbert
6ff44ed2c6
Merge pull request #19399 from frenzibyte/carousel-order-stability
...
Maintain sort stability by using carousel item ID as a fallback
2022-07-26 17:33:30 +09:00
Dean Herbert
7f75184a01
Merge branch 'master' into beatmap-update-test
2022-07-26 17:27:36 +09:00
Andrew Hong
003aec86ae
Rearrange sizeaxes
2022-07-26 04:27:22 -04:00
Andrew Hong
aaf6ec05bb
Remove notification upon copy
2022-07-26 04:19:54 -04:00