1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 04:23:24 +08:00
Commit Graph

43457 Commits

Author SHA1 Message Date
Dean Herbert
999c8fdc38
Merge pull request #27969 from bdach/enter-to-confirm-keybinding-conflict
Allow confirming keybinding overwrite on conflict via "select" binding
2024-04-23 23:38:50 +08:00
Dean Herbert
221af74f95
Merge branch 'master' into generic-math 2024-04-23 22:21:31 +08:00
Dean Herbert
d0edf72a0c
Update framework 2024-04-23 22:04:28 +08:00
Dean Herbert
602b16f533
Fix fade-in no longer working on videos 2024-04-23 22:03:32 +08:00
Dean Herbert
a7327a2998
Merge pull request #27972 from bdach/fix-mod-column-stupidity-rfc
Fix mod select overlay columns not displaying properly sometimes
2024-04-23 21:59:29 +08:00
Dean Herbert
436203a8c1
Add a chevron to distinguish editor menus with submenus 2024-04-23 21:37:01 +08:00
Dean Herbert
804b1b0d88
Fix settings colour scheme wrong when viewing gameplay from skin editor button
Closes https://github.com/ppy/osu/issues/27949.
2024-04-23 20:54:48 +08:00
Bartłomiej Dach
f7626aba18
Fix mod select overlay columns not displaying properly sometimes
Closes https://github.com/ppy/osu/issues/26504.

As far as I can tell the issue is basically another manifestation of
https://github.com/ppy/osu-framework/issues/5129, i.e. presence
overrides causing dropped invalidations and thus completely bogus
hierarchy state. The fix is to raise the appropriate invalidation
manually.
2024-04-23 13:36:12 +02:00
Bartłomiej Dach
1e0db1ab9f
Allow confirming keybinding overwrite on conflict via "select" binding 2024-04-23 12:44:16 +02:00
Dean Herbert
17ca29c2c6
Actually apply transforms to the video 2024-04-23 17:37:37 +08:00
Dean Herbert
7eeac0f3b9
Fix incorrect xmldoc
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-04-23 17:34:52 +08:00
Bartłomiej Dach
12acdeebf1
Merge pull request #27866 from Joehuu/fix-online-score-export
Fix replay export not working correctly from online leaderboards
2024-04-23 09:08:04 +02:00
Bartłomiej Dach
1f010c4bfd
Merge pull request #27808 from smoogipoo/fix-incorrect-pp-counter
Fix gameplay PP counter not matching results screen
2024-04-23 08:43:49 +02:00
Joseph Madamba
49154c0e23 Fix code quality 2024-04-22 11:23:38 -07:00
Joseph Madamba
35eddf35c5 Return Task.CompletedTask instead of null 2024-04-22 11:22:39 -07:00
Joseph Madamba
a59bf6d373 Improve xmldoc wording 2024-04-22 11:17:27 -07:00
Joseph Madamba
2eda56ff08 Revert beatmap query change 2024-04-22 11:15:50 -07:00
Dean Herbert
9e7182acf0
Remove unused DI beatmap paramater 2024-04-22 18:45:02 +08:00
Dean Herbert
c43c383abf
Allow storboard videos to take on no-relative size when specified by a mapper 2024-04-22 18:44:47 +08:00
Dean Herbert
4ae9f81c73
Apply transforms to storyboard videos
This requires that they are a `StoryboardSprite` for simplicity. Luckily
this works just fine.
2024-04-22 18:43:15 +08:00
Bartłomiej Dach
70a5288a68
Do not attempt to pass files that don't look like audio to BASS 2024-04-22 10:45:09 +02:00
Bartłomiej Dach
78f97d0ec7
Merge branch 'master' into verify-check-incorrect-audio-formats 2024-04-22 10:34:14 +02:00
Bartłomiej Dach
ceeb9b0819
Use explicit reference equality check 2024-04-22 10:27:30 +02:00
Bartłomiej Dach
1bcf835d22
Remove redundant array type specification 2024-04-22 10:25:46 +02:00
Bartłomiej Dach
09b0f3005e
Apply generic math-related changes 2024-04-22 10:15:56 +02:00
Arthur Araujo
49563f4e5b Use bitwise to check hitsound formats 2024-04-22 04:44:38 -03:00
Dan Balasescu
89a4a6878f
Merge pull request #27922 from peppy/quick-exit-from-results
Add ability to quick exit from results screen
2024-04-22 16:01:13 +09:00
Andrei Zavatski
1d3fd65d86 Adjust execution order 2024-04-22 07:02:49 +03:00
Andrei Zavatski
722fa228ce Don't consider editor table content for input 2024-04-21 17:40:35 +03:00
Dean Herbert
b9b341affd
Merge pull request #27930 from peppy/update-framework
Update framework
2024-04-20 05:26:53 +08:00
Dean Herbert
4cffc39dff
Don't require hold for quick exit at results screen 2024-04-20 04:53:31 +08:00
Bartłomiej Dach
3d64ffc93e
Merge pull request #27935 from smoogipoo/serialised-drawable-sane-defaults
Give SerialisedDrawableInfo sane defaults
2024-04-19 17:00:49 +02:00
Bartłomiej Dach
1344ca4e19
Merge pull request #27780 from mafarrica/27105-fix-mod-search-box-focus-changes
Fix mod search box not tracking external changes to focus state
2024-04-19 17:00:06 +02:00
Dan Balasescu
bac70da1a1
Give SerialisedDrawableInfo sane defaults 2024-04-19 22:03:19 +09:00
Dean Herbert
6e08fd7f27
Merge pull request #27931 from smoogipoo/remove-unused-lookup-members
Remove unused members from GameplaySkinComponentLookup
2024-04-19 20:51:09 +08:00
Dan Balasescu
ddc1b90ee1
Remove unused method 2024-04-19 20:36:24 +09:00
Arthur Araujo
92b85beff6 Remove ChannelType from messages 2024-04-19 08:01:23 -03:00
Arthur Araujo
68e86b5105 Remove unsued import and add a blankline before yield break; 2024-04-19 07:39:31 -03:00
Arthur Araujo
eac9dededf
Use periods instead of semicolons
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-04-19 07:20:59 -03:00
Bartłomiej Dach
509862490e
Revert unnecessary changes 2024-04-19 11:11:18 +02:00
Bartłomiej Dach
2dcbb823ef
Use textbox focus state directly rather than trying to track it independently 2024-04-19 11:08:34 +02:00
Dan Balasescu
362a7b2c77
Remove unused members from GameplaySkinComponentLookup 2024-04-19 18:03:13 +09:00
Dean Herbert
a41ae99dd7
Update framework 2024-04-19 15:14:52 +08:00
Dean Herbert
fe30c9ec2a
Merge branch 'master' into add-sound-to-tab-selection-change-2 2024-04-19 12:40:22 +08:00
Dean Herbert
c39eb5c5aa
Merge branch 'master' into upgrade-to-SDL3 2024-04-18 22:23:55 +08:00
Dean Herbert
46e2cfdba5
Update framework 2024-04-18 18:33:30 +08:00
Joseph Madamba
d08b1e5ae7 Add xmldoc to GetScore() and Export() and remove xmldoc from private getDatabasedScoreInfo() 2024-04-17 21:52:36 -07:00
Dean Herbert
f92833b588
Add ability to quick exit from results screen 2024-04-18 12:02:49 +08:00
Arthur Araujo
ac03856ebd Fix test methods names 2024-04-17 08:22:05 -03:00
Arthur Araujo
8d94f8d995 Remove BassFlags.Prescan and free the decodeStream 2024-04-17 08:14:19 -03:00
Salman Ahmed
a7e043bdbe Fix beatmap rulest selector playing sound for initial ruleset selection 2024-04-17 11:20:17 +03:00
Salman Ahmed
24e8b88320 Add inline comment to the custom implementation of multiple-selection tab items 2024-04-17 11:20:17 +03:00
Salman Ahmed
9e69268676 Change editor screen selection logic to use SelectItem for sound feedback 2024-04-17 11:20:17 +03:00
Salman Ahmed
42892acc1a Fix multiple selection filter tab items no longer playing sounds
These tab items are not managed by a `TabControl`, activation events are manually served by the class itself toggling `Active` when clicked.
2024-04-17 11:20:17 +03:00
Salman Ahmed
50a21fb727 Change ToolbarRulesetSelector to use SelectItem to trigger new sound feedback path 2024-04-17 11:20:17 +03:00
Salman Ahmed
2a3ae6bce1 Update all TabItem implementations to play select sample on OnActivatedByUser 2024-04-17 11:20:17 +03:00
Bartłomiej Dach
e11e9fe14f
Add TotalScoreWithoutMods to SoloScoreInfo
End goal being storing it server-side.
2024-04-17 09:15:51 +02:00
Bartłomiej Dach
18bb81e7a7
Populate total score without mods when performing standardised score migration 2024-04-17 09:11:47 +02:00
Bartłomiej Dach
2f1a4cdaa4
Export and import TotalScoreWithoutMods to replays (or recalculate if it missing) 2024-04-17 09:08:15 +02:00
Bartłomiej Dach
e0178802b8
Populate TotalScoreWithoutMods on scores set locally 2024-04-17 08:52:47 +02:00
Bartłomiej Dach
6b0d577f0b
Add backmigration of TotalScoreWithoutMods for existing scores 2024-04-17 08:52:27 +02:00
Bartłomiej Dach
a386068ed3
Add ScoreInfo.TotalScoreWithoutMods 2024-04-17 08:51:53 +02:00
Bartłomiej Dach
6c943681b0
Fix preview tracks playing after their owning overlay has hidden
RFC. Closes https://github.com/ppy/osu/issues/27883.

The idea here is that `PopOut()` is called _when the hide is requested_,
so once an overlay trigger would hide, the overlay would
`StopAnyPlaying()`, but because of async load things, the actual track
would start playing after that but before the overlay has fully hidden.
(That last part is significant because after the overlay has fully
hidden, schedules save the day.)

Due to the loose coupling between `PreviewTrackManager` and
`IPreviewTrackOwner` there's really no easy way to handle this locally
to the usages of the preview tracks. Heck, `PreviewTrackManager` doesn't
really know which preview track owner is to be considered _present_ at
any time, it just kinda works on vibes based on DI until the owner tells
all of its preview tracks to stop.

This solution causes the preview tracks to stop a little bit later but
maybe that's fine? Just trying to not overthink the issue is all.

No tests because this is going to suck to test automatically while it is
pretty easy to test manually (got it in a few tries on master).

The issue also mentions that the track can sometimes resume playing
after the overlay is pulled up again, but I don't see that as a problem
necessarily, and even if it was, it's not going to be that easy to
address due to the aforementioned loose coupling - to fix that, play
buttons would have to know who is the current preview track owner and
cancel schedules upon determining that their preview track owner has
gone away.
2024-04-16 16:19:26 +02:00
Arthur Araujo
c32d99250f Deal with corrupt audio files
This removes the corrupt file check from CheckTooShortAudioFiles and makes the audio formats checks deal with it instead to avoid redundant messages.
2024-04-16 06:53:55 -03:00
Bartłomiej Dach
d2a67d2d54
Merge pull request #27881 from smoogipoo/fix-mod-refilter
Don't re-filter unless mods may change the filter
2024-04-16 11:21:35 +02:00
Arthur Araujo
9ef27104ce Add checks for audio formats 2024-04-16 06:15:21 -03:00
Joseph Madamba
514e316b49 Make getDatabasedScoreInfo() private and move to GetScore() and Export() 2024-04-15 20:48:51 -07:00
Joseph Madamba
67cfcddc77 Use another beatmap query to not depend on databased score info 2024-04-15 20:18:24 -07:00
Dean Herbert
a651cb8d50
Stop background processing from running when inside a high performance session 2024-04-16 10:04:38 +08:00
Dean Herbert
d89edd2b4f
Expose high performance session state 2024-04-16 10:04:38 +08:00
Dan Balasescu
343b3ba0e6
Don't re-filter unless mods may change the filter 2024-04-15 21:07:36 +09:00
Bartłomiej Dach
7c4c8ee75c
Fix stable scores showing with faded out pp display due to classic mod presence 2024-04-15 11:53:05 +02:00
Joseph Madamba
ed8b596325 Fix replay export not working correctly from online leaderboards 2024-04-14 16:22:58 -07:00
Joseph Madamba
f282152f99 Enable NRT to ScoreManager 2024-04-14 15:53:29 -07:00
Ondřej Vajďák
ed6680a61d Fixed type inconsistency and rounding 2024-04-14 15:10:05 +02:00
Ondřej Vajďák
9833dd955f Fix toolbar volume bar masking 2024-04-14 01:30:59 +02:00
Loreos7
5a8b8908dd fix missing underscore 2024-04-13 14:53:51 +03:00
Dean Herbert
c0dce94f15
Fix newly placed items in skin editor not getting correct anchor placement 2024-04-12 17:08:49 +08:00
Dean Herbert
3ec93745a4
Fix test failures due to sentry oversight 2024-04-12 01:10:42 +08:00
Dan Balasescu
8b2017be45
Update Sentry to fix iOS build 2024-04-12 01:02:40 +09:00
Dan Balasescu
e9b319f4c6
Ensure all remaining objects are added in the last iteration 2024-04-12 00:11:54 +09:00
Dan Balasescu
19cc847be6
Implement a less failure-prone method 2024-04-11 23:40:40 +09:00
Dan Balasescu
f5555b9fa4
Also add potentially missed intermediate parents 2024-04-11 16:53:08 +09:00
Bartłomiej Dach
518addf323
Merge branch 'master' into fix-catmull-bulbs 2024-04-10 11:25:02 +02:00
Dean Herbert
6cb5bffdfc
Update resources 2024-04-10 13:03:37 +08:00
Dan Balasescu
fefcd17db9
Fix gameplay PP counter not matching results screen 2024-04-08 22:34:11 +09:00
Bartłomiej Dach
d6b1e68ee7
Merge branch 'master' into update-hit-error-icons 2024-04-05 09:36:18 +02:00
Dan Balasescu
7b92c725b1
Revert "Merge pull request #27454 from EVAST9919/sb-lifetime-improvements"
This reverts commit 0881e7c8c1, reversing
changes made to 29a37e3585.
2024-04-05 14:45:49 +09:00
Dean Herbert
10d1308a0a
Update resources 2024-04-04 15:05:59 +08:00
Dan Balasescu
cd474de61f
Update osu.Framework package 2024-04-04 15:55:05 +09:00
Dean Herbert
9521c1e3e4
Update hit error metre to use new icons
- [ ] Depends on https://github.com/ppy/osu-resources/pull/317.
2024-04-04 14:31:40 +08:00
Dean Herbert
2e1d63a1c2
Merge pull request #27783 from 64ArthurAraujo/add-invalid-beatmap-hash-custom-message
Add custom message in the case of a `invalid beatmap_hash`
2024-04-04 10:47:22 +08:00
Arthur Araujo
9e92ebaa43
Make message more general
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-04-03 19:15:22 -03:00
Arthur Araujo
8e00368f7c Add custom message in the case of a invalid beatmap_hash 2024-04-03 11:30:14 -03:00
Bartłomiej Dach
9d54f1a092
Fix some maps requiring multiple intro skips that weren't there on stable
Closes https://github.com/ppy/osu/issues/25633.

The reason why that particular beatmap did not have a double skip
on stable is here:

    e53980dd76/osu!/GameModes/Play/Player.cs#L1761-L1770

The particular place of interest is the `leadInTime < 10000` check.
If `leadInTime < 10000`, then `leadIn == leadInTime`, and it turns out
that `AudioEngine.Time` will always be more than or equal to `leadIn`,
because it's also the gameplay start time:

    e53980dd76/osu!/GameModes/Play/Player.cs#L2765

This essentially means that if the `leadInTime` is less than 10000,
that particular check is just dead. So a double skip can only occur
if the gameplay starts at time -10000 or earlier due to the storyboard.
2024-04-03 16:12:20 +02:00
Mafalda Fernandes
16276dfcd6 Fix #27105: Mod search box doesnt track external focus changes
In the Mod selection area, the search bar's focus could be changed by pressing TAB.
However, when clicking outside of the search bar, the focus would be killed but two TABs were required to get the focus back on the search bar.
This happened because the action of clicking in an empty area would trigger the search bar to change its appearence, but not its internal state.
In my solution, I made the OnClick function aware of the search bar's state, so it would not only change its appearance, but also its state.
Now, after clicking in an empty area, there is only needed one TAB to select the search box again, as expected.
2024-04-03 14:06:11 +01:00
Bartłomiej Dach
6d6412afdf
Merge branch 'master' into fix-skineditor-external-event-bind 2024-04-03 11:42:15 +02:00
Bartłomiej Dach
05fe8968d8
Only interact with clipboard via bound copy 2024-04-03 11:39:12 +02:00
Dan Balasescu
ce68f6adb7
Fix SkinEditor binding event to external bindable 2024-04-03 17:46:26 +09:00
Dan Balasescu
b5adcf2e0e
Fix SpectatorClient holding references to Player 2024-04-03 17:32:02 +09:00
Bartłomiej Dach
cb82fb0487
Merge branch 'master' into mania-key-count-mod-query 2024-04-03 09:29:32 +02:00
Dean Herbert
94cbe1838f
Replace usages of is null with == null 2024-04-03 01:50:39 +08:00
Dean Herbert
aa7b357063
Merge pull request #27768 from 64ArthurAraujo/editor-fix-sliders-same-start-time-merge
Fix merging sliders with the same `StartTime` causing a Unhandled Exception
2024-04-03 01:45:55 +08:00
Arthur Araujo
2a2a372595 Check if blueprint is in SelectionBlueprints before changing its depth 2024-04-02 07:45:27 -03:00
Dean Herbert
51e9348d27
Merge pull request #26702 from honguyenminh/fix-rotate-editor-button-disabled
Fix rotate tool button in editor disabled when selecting 1 circle
2024-04-02 14:31:43 +08:00
Dan Balasescu
4806ea54f1
Only optimise Catmull segments in osu ruleset 2024-04-01 17:22:50 +09:00
Dan Balasescu
d12a2e7df7
Replace schedule with SequenceEqual() 2024-04-01 17:02:02 +09:00
Dean Herbert
95b50576bd
Merge pull request #27698 from bdach/banish-rulesets-that-do-stupid-crap-to-the-BLAGOLE
Attempt to disable custom rulesets that can be linked to an unhandled crash
2024-04-01 15:47:47 +08:00
Andrei Zavatski
11b1135804 Adjust blurred icons position due to size handling differences 2024-03-31 01:55:34 +03:00
Andrei Zavatski
58a68e94af Simplify glowing icons in break overlay 2024-03-31 01:44:54 +03:00
Andrei Zavatski
54472e6452 Decouple GlowingDrawable from GlowingSpriteText 2024-03-31 01:44:54 +03:00
Nguyên Minh Hồ
6f782266b5 Fix inspection 2024-03-30 17:28:57 +07:00
Nguyên Minh Hồ
5d497ba4a8 Simplify TooltipText for EditorRadioButton 2024-03-30 16:04:22 +07:00
Nguyên Minh Hồ
9950395e5f Merge branch 'fix-rotate-editor-button-disabled' of https://github.com/honguyenminh/osu into fix-rotate-editor-button-disabled 2024-03-30 13:57:44 +07:00
Nguyên Minh Hồ
113dbcd10f
Merge branch 'master' into fix-rotate-editor-button-disabled 2024-03-30 13:56:31 +07:00
Dan Balasescu
48f8d9c916
Merge pull request #27756 from bdach/pp-on-results-provisional
Apply partial fade on pp display on results screen when score will not give pp
2024-03-29 19:57:59 +09:00
Bartłomiej Dach
5371141d3b
Merge pull request #27755 from peppy/fix-import-weirdness
Avoid reporting an import as successful when all beatmaps failed to import
2024-03-29 11:25:41 +01:00
Bartłomiej Dach
e06df34a1c
Apply partial fade on pp display on results screen when score will not give pp 2024-03-29 11:16:31 +01:00
Bartłomiej Dach
2d3b273974
Remove redundant string interpolation 2024-03-29 10:37:49 +01:00
Dean Herbert
233b9eb172
Avoid reporting an import as successful when all beatmaps failed to import 2024-03-29 17:11:55 +08:00
Dean Herbert
d9cf5b5440
Fix bindable not being correctly re-bound across local user changes 2024-03-29 15:50:10 +08:00
Dean Herbert
fef8afb833
Fix double binding causing game crash after API enters failing state
See https://sentry.ppy.sh/organizations/ppy/issues/33406/?alert_rule_id=4&alert_timestamp=1711655107332&alert_type=email&environment=production&project=2&referrer=alert_email
2024-03-29 12:19:14 +08:00
Dan Balasescu
6e746a0fa0
Fix carousel reoder on initial enter 2024-03-28 23:56:46 +09:00
Dan Balasescu
9fd6449fd8
Add mods to FilterCriteria, pass to ruleset method 2024-03-28 23:03:26 +09:00
Dan Balasescu
10edb54614
Add ability to query key count with mods 2024-03-28 22:51:12 +09:00
Dan Balasescu
5febd40bd9
Add HP and AR to LegacyBeatmapConversionDifficultyInfo 2024-03-28 22:30:39 +09:00
Susko3
53900d5472 Fix tests failing locally due to not using invariant culture 2024-03-27 18:56:26 +01:00
Dan Balasescu
600098d845
Fix bulbs on Catmull sliders 2024-03-27 04:05:04 +09:00
Bartłomiej Dach
6ef54321c4
Merge pull request #26707 from peppy/beat-sync-container-early-adjust
Adjust `BeatSyncContainer`'s early animate offset based on source's rate
2024-03-26 18:43:25 +01:00
Bartłomiej Dach
0b29a762b8
Add precautionary guard to avoid potential div-by-zero
Probably wouldn't happen outside of tests, but I'd rather not find out
next release.
2024-03-26 17:36:40 +01:00
Dean Herbert
a5f15a119e
Apply rate adjust fix in all cases rather than specifically for Clock.Rate == 1 2024-03-26 22:51:54 +08:00
Dean Herbert
eae8e243c6
Merge branch 'master' into beat-sync-container-early-adjust 2024-03-26 21:31:33 +08:00
Bartłomiej Dach
bc1ffb0b6e
Merge branch 'master' into shared-menu-content 2024-03-26 13:47:44 +01:00
Dean Herbert
e77d4c8cfa
Remove unnecessary Math.Max 2024-03-26 20:28:03 +08:00
Dean Herbert
fd649edaba
Also don't rotate images during a drag operation 2024-03-26 20:21:48 +08:00
Dean Herbert
9474156df4
Improve equality implementations 2024-03-26 20:21:12 +08:00
Bartłomiej Dach
56dc6bb192
Merge branch 'master' into feat/support-filtering-for-multiple-types 2024-03-26 12:39:51 +01:00
Bartłomiej Dach
e52d51cd0a
Update OptionalSet implementation to intersect across multiple filters rather than union 2024-03-26 12:32:03 +01:00
Bartłomiej Dach
b74f8dba41
Merge branch 'master' into verify-abnormal-difficulty-settings 2024-03-26 11:13:16 +01:00
Bartłomiej Dach
1866b4b6b1
Refactor abstract check to reduce duplication 2024-03-26 11:13:03 +01:00
Bartłomiej Dach
73926592b9
Bump legacy score version to recalculate all scores 2024-03-25 19:27:38 +01:00
Bartłomiej Dach
4979305b2d
Ensure TryDisableCustomRulesetsCausing() never actually crashes itself 2024-03-25 11:34:29 +01:00
Bartłomiej Dach
fb08d6816b
Only attempt to disable rulesets when decidedly crashing out 2024-03-25 11:33:15 +01:00
Dean Herbert
bb9fa52fda
Fix displayIndex not being correctly set to -1 after last expiry date 2024-03-25 14:53:05 +08:00
Dean Herbert
057f86dd14
Add handling of expiration 2024-03-25 14:31:05 +08:00
Dean Herbert
f0614928b1
Read from new location 2024-03-25 13:19:12 +08:00
Dean Herbert
e9f15534ed
Improve test coverage 2024-03-25 12:33:32 +08:00
Dean Herbert
3847aae57d
Don't rotate when hovering 2024-03-25 12:14:40 +08:00
Dean Herbert
d0b164b44f
Add automatic rotation support 2024-03-25 11:41:50 +08:00
Dean Herbert
a4c619ea97
Add basic support for loading multiple images 2024-03-24 15:14:56 +08:00
Dean Herbert
ec4a9a5fdd
Make work again for simple case 2024-03-24 14:55:45 +08:00
Dean Herbert
ef2a16dd8f
Various renaming and class updates to allow multiple menu banners 2024-03-24 14:55:43 +08:00
Arthur Araujo
8a05fecad5 Fix formatting issue 2024-03-23 23:28:55 -03:00
Arthur Araujo
6fbe1a5b8d Add video resolution check 2024-03-23 19:22:47 -03:00
Bartłomiej Dach
c7c0330265
Attempt to disable rulesets that can be linked to an unhandled crash 2024-03-22 19:05:58 +01:00
Bartłomiej Dach
a1880e89c2
Use title as tiebreaker when sorting beatmap carousel by artist
Closes https://github.com/ppy/osu/issues/27548.

Reference: e53980dd76/osu!/GameplayElements/Beatmaps/BeatmapTreeManager.cs#L341-L347
2024-03-22 08:41:10 +01:00
Arthur Araujo
a4822fd615 Make CheckAbnormalDifficultySettings abstract 2024-03-22 01:37:06 -03:00
Salman Ahmed
1efa08a1b8
Merge branch 'master' into convert-path-string-new 2024-03-22 05:15:04 +03:00
Bartłomiej Dach
990a07af0e
Rewrite handling of legacy replay frame quirks to match stable closer 2024-03-21 21:11:29 +01:00
Bartłomiej Dach
c47463ee0e
Merge branch 'master' into negative-frame-handling 2024-03-21 16:45:35 +01:00
Dean Herbert
970e45ff24
Merge pull request #26937 from frenzibyte/fix-osu-logo-blocking-load
Stop blocking player load when hovering over osu! logo
2024-03-21 21:52:25 +08:00
Bartłomiej Dach
3e764ae4f0
Merge pull request #27639 from 64ArthurAraujo/verify-unused-audio-at-end
Add verify checks to unused audio at the end
2024-03-21 12:19:53 +01:00
Bartłomiej Dach
983385bafc
Merge pull request #27677 from smoogipoo/fix-catch-banana-fail
Fix catch banana shower judgement causing fail when at 0 HP
2024-03-21 11:23:51 +01:00
Dean Herbert
c081cc7d77
Merge pull request #27681 from smoogipoo/add-deployed-build-attribute
Warn about not using an official "deployed" build
2024-03-21 14:13:40 +08:00
Dean Herbert
b99b0337cf
Adjust text slightly 2024-03-21 13:06:25 +08:00
Dean Herbert
0589924dc6
Merge pull request #27079 from smoogipoo/tcm-resume
Add delayed resume for taiko/catch/mania
2024-03-21 12:48:53 +08:00
Dean Herbert
55d66d4615
Add sounds to countdown 2024-03-21 11:45:48 +08:00
Dean Herbert
a07d5115bf
Update resources 2024-03-21 11:42:22 +08:00
Arthur Araujo
b132734f9c Fix codefactor issues 2024-03-20 18:54:38 -03:00
Arthur Araujo
c605e463a4 Add mania keycount check 2024-03-20 15:52:16 -03:00
Dan Balasescu
ac7fca10d6
Warn about not using an official "deployed" build 2024-03-21 00:47:45 +09:00
Arthur Araujo
4904c49c38 Add abnormal difficulty settings checks 2024-03-20 09:31:58 -03:00
Dan Balasescu
c78e203df5
Fix infinite health processor loop when no top-level objects
This is unlikely to occur in actual gameplay, but occurs in the
follow-up test.
2024-03-20 17:30:37 +09:00
Bartłomiej Dach
1f343b7545
Add extended logging when discarding online metadata lookup results
Related to: https://github.com/ppy/osu/issues/27674

Relevant log output for that particular case:

	[network] 2024-03-20 07:25:30 [verbose]: Performing request osu.Game.Online.API.Requests.GetBeatmapRequest
	[network] 2024-03-20 07:25:30 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/lookup successfully completed!
	[network] 2024-03-20 07:25:30 [verbose]: GetBeatmapRequest finished with response size of 3,170 bytes
	[database] 2024-03-20 07:25:30 [verbose]: [4fe02] [APIBeatmapMetadataSource] Online retrieval mapped Tsukiyama Sae - Hana Saku Iro wa Koi no Gotoshi (Log Off Now) [Destiny] to 744883 / 1613507.
	[database] 2024-03-20 07:25:30 [verbose]: Discarding metadata lookup result due to mismatching online ID (expected: 1570982 actual: 1613507)
	[network] 2024-03-20 07:25:30 [verbose]: Performing request osu.Game.Online.API.Requests.GetBeatmapRequest
	[network] 2024-03-20 07:25:30 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/lookup successfully completed!
	[network] 2024-03-20 07:25:30 [verbose]: GetBeatmapRequest finished with response size of 2,924 bytes
	[database] 2024-03-20 07:25:30 [verbose]: [4fe02] [APIBeatmapMetadataSource] Online retrieval mapped Tsukiyama Sae - Hana Saku Iro wa Koi no Gotoshi (Log Off Now) [Easy] to 744883 / 1570982.
	[database] 2024-03-20 07:25:30 [verbose]: Discarding metadata lookup result due to mismatching online ID (expected: 1613507 actual: 1570982)

Note that the online IDs are swapped.
2024-03-20 08:28:11 +01:00
Bartłomiej Dach
8ee391530f
Merge pull request #27675 from peppy/remove-breadcrumb-control
Remove unused `ScreenBreadcrumbControl`
2024-03-20 08:02:36 +01:00
Dean Herbert
1f70019009
Merge pull request #27630 from EVAST9919/editor-performance
Improve editor performance for maps with many control points
2024-03-20 13:20:21 +08:00
Dean Herbert
fd509c82f5
Adjust code structure slightly 2024-03-20 12:52:54 +08:00
Dean Herbert
d83a53fc94
Remove unused ScreenBreadcrumbControl
See https://github.com/ppy/osu-framework/pull/6218#discussion_r1529932798.
2024-03-20 12:10:05 +08:00
Bartłomiej Dach
e4418547fe
Document GetLastObjectTime() exception on empty beatmap 2024-03-19 19:19:07 +01:00
Bartłomiej Dach
2b83e6bc4c
Fix check crash on empty beatmap 2024-03-19 19:17:22 +01:00
Bartłomiej Dach
af3f7dcbbf
Retouch update criteria method 2024-03-19 18:33:35 +01:00
Bartłomiej Dach
320373e3e0
Rename method to match convention better 2024-03-19 18:28:13 +01:00
Bartłomiej Dach
feaf59e15f
Use HashSet instead of SortedSet
No need for it to be sorted.
2024-03-19 18:26:58 +01:00
Dean Herbert
0de5ca8d2d
Update incorrect xmldoc 2024-03-20 01:26:39 +08:00
Dean Herbert
35df381717
Merge branch 'master' into tcm-resume 2024-03-20 01:25:40 +08:00
Bartłomiej Dach
0180b25546
Merge pull request #27064 from smoogipoo/heatmap-misses
Display misses in the hit accuracy heatmap
2024-03-19 16:20:25 +01:00
Dan Balasescu
f6069d8d93
Compare against MaxCombo instead 2024-03-19 17:46:18 +09:00
Dan Balasescu
6e33509417
Remove added property, use local decoding instead 2024-03-19 17:44:37 +09:00
Dan Balasescu
af713a7869
Fix incorrectly encoded score IsPerfect value 2024-03-19 17:20:59 +09:00
Salman Ahmed
bbdcb38f5d
Merge branch 'master' into convert-path-string-new 2024-03-19 02:51:24 +03:00
Salman Ahmed
a8ce6a0bba Use Slice method instead of index range operators for readability 2024-03-19 02:43:36 +03:00
Arthur Araujo
5241c999c1 Add different warning to maps with storyboard/video 2024-03-18 16:08:41 -03:00
Arthur Araujo
f6d7f18f25 Remove unused localisation file 2024-03-18 15:59:19 -03:00
Andrei Zavatski
7ca45c75b3 Don't iterate backwards on children without a reason 2024-03-18 20:46:38 +03:00
Andrei Zavatski
0edc249637 Make Timeline non-nullable 2024-03-18 20:38:19 +03:00
Andrei Zavatski
57399e9899 Merge branch 'master' into editor-performance 2024-03-18 20:34:48 +03:00
Arthur Araujo
c23212f4ef Use GetLastObjectTime to calculate mapped length 2024-03-18 14:02:33 -03:00
Arthur Araujo
915a9682b5 Fix issue type and display percentage left 2024-03-18 13:51:36 -03:00
Arthur Araujo
a3f3dcf853 Inline percentage calculation 2024-03-18 13:27:43 -03:00
Vlad Frangu
77119b2cdb
chore: correct doc string 2024-03-18 16:44:42 +02:00
Bartłomiej Dach
c9bbeeb49a
Merge branch 'master' into heatmap-misses 2024-03-18 14:43:24 +01:00
Vlad Frangu
d0678bfbee
chore: requested changes 2024-03-18 15:30:43 +02:00
Dean Herbert
498948f17d
Merge pull request #27607 from Joehuu/fix-beatmap-card-lime-artifact
Fix noticeable masking artifact of beatmap cards when already downloaded
2024-03-18 00:38:56 +08:00
Arthur Araujo
f7aff76592 Fix codefactor issues 2024-03-16 23:03:06 -03:00
Arthur Araujo
63816adbc0 Add verify checks to unused audio at the end 2024-03-16 21:20:12 -03:00
Vlad Frangu
e1c1609271
chore: correct equal logic 2024-03-16 21:48:44 +02:00
Vlad Frangu
0a6960296e
feat: Support filtering for multiple statuses 2024-03-16 21:32:55 +02:00
Andrei Zavatski
34a5e2d606 Don't update subtree masking in TimelineTickDisplay 2024-03-16 15:20:37 +03:00
Andrei Zavatski
981ee54cdc Fix transforms overhead in TimelineTickDisplay 2024-03-16 15:05:52 +03:00
Andrei Zavatski
e825db61ee Fix enumerator allocation 2024-03-16 12:26:56 +03:00
Andrei Zavatski
854d7c6fb4 Merge branch 'master' into editor-performance 2024-03-16 12:26:39 +03:00
Andrei Zavatski
ea3a9314f9 Improve TimelineControlPointDisplay performance 2024-03-16 11:57:18 +03:00
Dean Herbert
15c0b1a2ec
Remove redundant cast 2024-03-16 13:18:42 +08:00
Dean Herbert
a49c4ebea6
Match settings panels' backgrounds visually and behaviourally 2024-03-16 10:23:21 +08:00
Dean Herbert
0f8d526453
Adjust timings and delay disclaimers the same as settings 2024-03-16 10:09:49 +08:00
Bartłomiej Dach
a78210c88f
Handle hover so that users can hover disclaimer to block load & read it 2024-03-15 11:45:27 +01:00
Bartłomiej Dach
e6883b8418
Tweak visuals further 2024-03-15 11:38:51 +01:00
Bartłomiej Dach
51568ba06a
Add background to disclaimers 2024-03-15 11:31:45 +01:00
Bartłomiej Dach
5513a72748
Improve hiding transition when multiple disclaimers are visible 2024-03-15 11:01:34 +01:00
Bartłomiej Dach
49a087f7fc
Add localisation support 2024-03-15 10:59:49 +01:00
Bartłomiej Dach
4688a53cf4
Stay on player loader a bit longer if disclaimers are present
Just to make reading the text easier.
2024-03-15 09:53:20 +01:00
Bartłomiej Dach
f3a444b7ac
Add disclaimer for loved/qualified status 2024-03-15 09:53:20 +01:00
Bartłomiej Dach
42ae18976f
Replace existing epilepsy warning with inline display 2024-03-15 09:53:20 +01:00
Bartłomiej Dach
1aa695add9
Implement alternate design of player loader disclaimers 2024-03-15 09:53:18 +01:00
Dean Herbert
23975d4dd1
Add flash and reduce overall time for countdown to 2 seconds 2024-03-14 22:49:53 +08:00
Dean Herbert
2845303a74
Fix non-matching scale outwards animation 2024-03-14 22:45:05 +08:00
Dean Herbert
888245b44f
Reorder methods 2024-03-14 22:44:26 +08:00
Dean Herbert
d7769ec3e2
Adjust animation 2024-03-14 22:44:23 +08:00
Dean Herbert
42bd558d7c
Only update text when necessary (reducing unnecessary string allocadtions) 2024-03-14 22:43:08 +08:00
Joseph Madamba
f8a841e907 Add comment explaining why width is limited to the button area
Same comment as a47ccb8edd/osu.Game/Screens/Select/BeatmapInfoWedgeV2.cs (L91-L92).
2024-03-14 00:17:22 -07:00
Salman Ahmed
b4cee12db9 Use defined colours for counter background 2024-03-14 09:22:03 +03:00
Joseph Madamba
b309aad895 Fix noticeable masking artifact of beatmap cards when already downloaded
Had a similar fix before seeing https://github.com/ppy/osu/pull/20743#discussion_r994955470, but using that diff instead so co-authoring.

Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-03-13 22:36:52 -07:00
Dan Balasescu
b431bb1176
Resolve post-merge issues 2024-03-14 12:24:12 +09:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume 2024-03-14 12:22:46 +09:00
Dan Balasescu
789a9f4dfa
Initial redesign following flyte's design 2024-03-14 11:38:16 +09:00
Dean Herbert
a47ccb8edd
Merge pull request #27600 from bdach/dont-die-on-audio-in-video-check
Fix audio in video check crashing on unexpected failures
2024-03-14 10:28:45 +08:00
Bartłomiej Dach
d32f19b546
Fix first word bold not applying correctly after first language change
Closes https://github.com/ppy/osu/issues/27549.

I'm not entirely sure why the old solution failed exactly, but also
think it's unimportant because I think past me was an idiot and was
playing stupid games with the juggling of indices between two callbacks
with no ordering guarantees and expecting not to win stupid prizes.

I'm not sure this requires any follow-up reconsiderations of that entire
text flow API, but if opinions differ, I'll re-examine.
2024-03-13 15:18:20 +01:00
Bartłomiej Dach
20c760835a
Fix audio in video check crashing on unexpected failures 2024-03-13 13:55:49 +01:00
Joseph Madamba
e2e99fc5cc Rearrange rankings overlay tabs to match web 2024-03-12 21:15:59 -07:00
Dean Herbert
a4a433b92a
Remember login by default
Kinda what is expected from a user's perspective
2024-03-12 20:14:50 +08:00
Dean Herbert
5b2dd95fd6
Merge pull request #27586 from bdach/ignore-directory-zip-entries
Fix exports containing zero byte files after import from specific ZIP archives
2024-03-12 17:18:39 +08:00
Bartłomiej Dach
83e47b3c4c
Fix exports containing zero byte files after import from specific ZIP archives
Closes https://github.com/ppy/osu/issues/27540.

As it turns out, some ZIP archivers (like 7zip) will decide to add fake
entries for directories, and some (like windows zipfolders) won't.
The "directory" entries aren't really properly supported using any
actual data or attributes, they're detected by sharpcompress basically
by heuristics:

    ab5535eba3/src/SharpCompress/Common/Zip/Headers/ZipFileEntry.cs (L19-L31)

When importing into realm we have thus far presumed that these directory
entries will not be a thing. Having them be a thing breaks multiple
things, like:

- When importing from ZIPs with separate directory entries, a separate
  `RealmFile` is created for a directory entry even though it doesn't
  represent a real file
- As a result, when re-exporting a model with files imported from such
  an archive, a zero-byte file would be created because to the database
  it looks like it was originally a zero-byte file.

If you want to have fun, google "zip empty directories". You'll see
a whole gamut of languages, libraries, and developers stepping on this
rake. Yet another episode of underspecced mistakes from decades ago
that were somebody's "good idea" but continue to wreak havoc forevermore
because now there are two competing conventions you can't just pick one.
2024-03-12 09:06:24 +01:00
Dean Herbert
83052fe1d9
Downgrade realm to work around crashes on latest release
See https://github.com/ppy/osu/issues/27577.
2024-03-12 15:41:50 +08:00
Bartłomiej Dach
f30dfcb728
Fix ruleset medals not displaying due to deserialisation failure
🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦

Reported in
https://discord.com/channels/188630481301012481/188630652340404224/1216812697589518386.
2024-03-11 21:34:10 +01:00
Bartłomiej Dach
9bc55be515
Merge pull request #27564 from EVAST9919/editor-blueprint-gradient
Fix incorrect gradient application in `TimelineHitObjectBlueprint`
2024-03-11 16:02:05 +01:00
Bartłomiej Dach
09179f99c0
Merge branch 'master' into wrap-beatmap-listing-filters 2024-03-11 14:59:48 +01:00
Bartłomiej Dach
e5e7c8f268
Wrap beatmap listing filter names too
While we're here fixing...

Addresses
https://github.com/ppy/osu/discussions/15452#discussioncomment-2734237.
2024-03-11 14:58:28 +01:00
Andrei Zavatski
6ecef33fd7 Fic incorrect ExtendableCircle gradient 2024-03-10 22:45:29 +03:00
Andrei Zavatski
549a8d678e Reduce allocations in ControlPointList 2024-03-09 20:50:54 +03:00
Dean Herbert
31739be499
Update resources 2024-03-09 20:48:57 +08:00
Dean Herbert
b8a362fcb6
Simplify assignment by using an auto property 2024-03-09 20:17:27 +08:00
Andrei Zavatski
58b6acde10 Further simplify tooltip text creation 2024-03-09 14:10:32 +03:00
Andrei Zavatski
dd36942508 Reduce allocations in DrawableFlag tooltip 2024-03-09 13:58:05 +03:00
Andrei Zavatski
26c97ef733 Fix WikiPanelContainer causing poor performance 2024-03-09 00:51:33 +03:00
Joseph Madamba
db1c59475b Wrap beatmap listing filters and match web spacing 2024-03-08 12:13:54 -08:00
Salman Ahmed
9f71eac1db Remove extra end line 2024-03-08 23:09:50 +03:00
Salman Ahmed
8c92bb0595 Remove unused using directive 2024-03-08 23:09:16 +03:00
Salman Ahmed
1942d46a38 Remove leftover debugging code 2024-03-08 22:37:27 +03:00
Salman Ahmed
6861d9a302 Expose storyboard command lists as read-only and remove unnecessary memory footprint
Mutation should be done only with the methods exposed by `StoryboardCommandGroup`.
2024-03-08 22:29:49 +03:00
Salman Ahmed
0efa12a86a Fix parameter commands applying initial value before start time 2024-03-08 21:56:25 +03:00
Salman Ahmed
c1649b76d6 Reorder command properties to match general format
I had them shuffled around in the middle of the refactor.
2024-03-08 21:33:53 +03:00
Dean Herbert
612bc66e86
Merge pull request #27535 from nekodex/argon-hitsounds
Add support for argon hitsounds
2024-03-09 01:47:35 +08:00
Salman Ahmed
a85be2a46d Fix merge conflicts 2024-03-08 20:22:26 +03:00
Salman Ahmed
8d3e502262 Merge branch 'master' into storyboard-loops-v2 2024-03-08 20:22:19 +03:00
Jamie Taylor
27d78fdb08
Add fallback to find spinner samples without a bank prefix 2024-03-09 01:10:28 +09:00
Jamie Taylor
ad842b60f5
Add support for Argon hitsounds 2024-03-08 21:43:18 +09:00
Bartłomiej Dach
44d0dc6113
Fix 1px flashlight gaps when gameplay scaling mode is active
Closes https://github.com/ppy/osu/issues/27522.

Concerns mostly taiko and catch.

Not much of a proper fix rather than a workaround but it is what it is.
I tried a few other things, including setting `MaskingSmoothness = 0` on
the scaling container itself, to no avail.
2024-03-08 11:07:30 +01:00
Dean Herbert
c9b4c684e5
Merge pull request #27403 from Gabixel/increase-modselect-initial-scroll
Change initial scroll effect to mod columns
2024-03-08 14:00:40 +08:00
Dean Herbert
5e7d9ea04a
Adjust scroll speed back to original 2024-03-08 13:59:04 +08:00
Dean Herbert
d9cc619693
Merge branch 'master' into argon-pp-counter 2024-03-08 10:32:16 +08:00
Dean Herbert
9286398633
Move naming migrations to more correct place 2024-03-08 10:26:08 +08:00
Dean Herbert
0ebb12f67f
Move skinnable interface specification to non-abstract classes 2024-03-08 10:23:46 +08:00
Dean Herbert
ae2ef8ee1e
Fix typo in wireframe description 2024-03-08 10:19:00 +08:00
Dean Herbert
f2753ef7a2
Decrease size of pp display relative to accuracy 2024-03-08 09:41:38 +08:00
Dean Herbert
87b4406bdc
Pad at minimum three digits for argon pp display 2024-03-08 09:41:28 +08:00
Salman Ahmed
79da6d8613 Fix refactor error on EndTimeForDisplay
Not sure when this happened >.>
2024-03-08 03:08:03 +03:00
Salman Ahmed
fa9b2f0cd5 Add generics to ApplyInitialValue/ApplyTransforms for ability to return custom transform sequences
*sigh*
2024-03-08 03:07:39 +03:00
Salman Ahmed
b450abb687 Support applying initial values of storyboard commands 2024-03-08 02:02:48 +03:00
Salman Ahmed
2ca36254f4 Fix comparison interface not implemented on storyboard command classes 2024-03-08 02:02:25 +03:00
Salman Ahmed
3755dd059a Calculate loop delays at point of transform application 2024-03-08 02:01:02 +03:00
Salman Ahmed
87b065b8c3 Fix incorrect start time calculations
`LoopStartTime` is now baked into each `IStoryboardCommand`.
2024-03-08 02:01:02 +03:00
Salman Ahmed
6c257e5159 Fix HasCommands property not set at all 2024-03-08 01:59:44 +03:00
Salman Ahmed
9b77d8c972 Fix group start/end time not calculating correctly 2024-03-08 01:59:28 +03:00
Salman Ahmed
585ab59768 Apply major refactor to the storyboard commands flow structrure 2024-03-08 01:10:09 +03:00
Dan Balasescu
ca92a31cf9
Fix missing event unbinds 2024-03-07 21:10:11 +09:00
Bartłomiej Dach
fba44e67a0
Merge pull request #27214 from Givikap120/freemod_mapinfo_fix
Fix mod selection in online-play rooms not accounting for mods of selected item
2024-03-07 12:45:14 +01:00
Bartłomiej Dach
3d8fdc52a4
Merge pull request #27501 from turbedi/throw_helper
Use ThrowHelper methods in more places
2024-03-07 11:36:21 +01:00
Bartłomiej Dach
e99030c515
Merge pull request #27516 from frenzibyte/editor-screen-selector
Change editor screen switcher control design and behaviour to act like a button
2024-03-07 11:04:18 +01:00
Bartłomiej Dach
644553d5b4
Merge branch 'master' into freemod_mapinfo_fix 2024-03-07 09:24:44 +01:00
Dan Balasescu
1cafb09977
Increase border thickness 2024-03-07 17:22:38 +09:00
Joseph Madamba
c36232bc02 Fix results screen accuracy circle not showing correctly for failed S with no flair 2024-03-07 00:10:30 -08:00
Dan Balasescu
e0fe33a7a7
Merge pull request #27513 from bdach/osu-score-conversion-bad-very-not-good
Fix osu! standardised score estimation algorithm violating basic invariants
2024-03-07 17:05:32 +09:00
Salman Ahmed
0fe139a189 Adjust editor screen switcher control design and behaviour 2024-03-07 08:20:46 +03:00
Salman Ahmed
336a6180e5 Expose TRANSITION_LENGTH from tab control 2024-03-07 08:20:20 +03:00
Bartłomiej Dach
aa3cd402ca
Fix broken english 2024-03-06 21:30:31 +01:00
Bartłomiej Dach
3121cf81e6
Bump score version 2024-03-06 21:30:09 +01:00
Dean Herbert
13f7480d79
Merge branch 'master' into sb-lifetime-improvements 2024-03-06 19:27:40 +08:00
Dean Herbert
5b6703ec0d
Move optimisation to isolated method 2024-03-06 19:25:13 +08:00
Dean Herbert
29a37e3585
Merge pull request #27491 from bdach/f-rank-appearance
Update F rank badge colours to match latest designs
2024-03-06 18:55:20 +08:00
Bartłomiej Dach
08609e19d6
Fix osu! standardised score estimation algorithm violating basic invariants
As it turns out, the "lower" and "upper" estimates of the combo portion
of the score being converted were misnomers. In selected cases
(scores with high accuracy but combo being lower than max by more than
a few objects) the janky score-based math could overestimate the count
of remaining objects in a map. For instance, in one case the numbers
worked out something like this:

- Accuracy: practically 100%
- Max combo on beatmap: 571x
- Max combo for score: 551x

The score-based estimation attempts to extract a "remaining object
count" from score, by doing something along of sqrt(571^2 - 551^2). That
comes out to _almost 150_. Which leads to the estimation overshooting
the total max combo count on the beatmap by some hundred objects.

To curtail this nonsense, enforce some basic invariants:

- Neither estimate is allowed to exceed maximum achievable
- Ensure that lower estimate is really lower and upper is really upper
  by just looking at the values and making sure that is so rather than
  just saying that it is.
2024-03-06 11:40:10 +01:00
Dan Balasescu
d8003ab8e8
Merge pull request #27489 from bdach/fix-catch-pp-mismatch
Fix catch pp calculator not matching live with respect to miss handling
2024-03-06 19:39:20 +09:00
Bartłomiej Dach
b740481eaf
Merge pull request #27504 from peppy/replay-state-sanity-1
Never set `waitingOnFrames` if a replay is not attached
2024-03-06 09:51:09 +01:00
Bartłomiej Dach
53fffc6a75
Remove unused using directives 2024-03-06 07:57:59 +01:00
Dean Herbert
06c7483347
Merge branch 'master' into update-framework 2024-03-06 12:36:05 +08:00
Dean Herbert
85364d25dc
Merge pull request #27276 from bdach/medals
Add flow for displaying achieved medals
2024-03-06 12:31:55 +08:00
Dean Herbert
3a224211aa
Update various packages which shouldn't cause issues 2024-03-06 12:17:00 +08:00
Dean Herbert
4c7678225e
Update framework 2024-03-06 12:13:41 +08:00
Dean Herbert
0696e7de52
Update ImageSharp usages 2024-03-06 12:13:12 +08:00
Dean Herbert
b53b752e54
Update usage of MathUtils 2024-03-06 12:13:12 +08:00
Dean Herbert
6455c0583b
Update usage of CircularProgress.Current 2024-03-06 12:13:10 +08:00
Andrei Zavatski
07392a4d3e Further simplify transform application 2024-03-06 01:10:22 +03:00
Andrei Zavatski
1c8ede854d Remove blank lines 2024-03-06 00:17:56 +03:00
Andrei Zavatski
8b03acd27b Implement StoryboardElementWithDuration 2024-03-06 00:16:06 +03:00
Dean Herbert
65ce4ca390
Never set waitingOnFrames if a replay is not attached 2024-03-06 04:37:11 +08:00
Dean Herbert
57daaa7fed
Add logging for GameplayClockContainer starting or stopping 2024-03-06 04:37:11 +08:00
Bartłomiej Dach
09c6c5d79b
Merge pull request #27497 from frenzibyte/mod-select-overlay-fix-ux
Fix mod select overlay settings order not always matching mod panels
2024-03-05 19:40:13 +01:00
Bartłomiej Dach
429fa8dfae
Merge pull request #27242 from Susko3/log-global-statistics
Log `GlobalStatistics` when exporting logs from settings
2024-03-05 19:32:54 +01:00
Bartłomiej Dach
e6f1a722cb
Remove unused field and commented-out code 2024-03-05 18:49:19 +01:00
Berkan Diler
d0f7ab3316 Revert some changes 2024-03-05 17:18:59 +01:00
Berkan Diler
6fabbe2616 Use new ToDictionary() overload without delegates 2024-03-05 10:27:12 +01:00
Berkan Diler
5965db4fd7 Use ArgumentException.ThrowIfNullOrEmpty throw helper 2024-03-05 10:20:57 +01:00
Berkan Diler
a891303484 Use ArgumentOutOfRangeException throw helper methods 2024-03-05 10:20:30 +01:00
Berkan Diler
9bac60a98f Use ArgumentNullException.ThrowIfNull in more places 2024-03-05 10:19:47 +01:00
Berkan Diler
43841e210d Use ObjectDisposedException.ThrowIf throw helper 2024-03-05 09:58:46 +01:00
Salman Ahmed
49b3e81e8a Migrate DefaultPerformancePointsCounter and rename it 2024-03-05 04:35:39 +03:00
Salman Ahmed
0cbcfcecdc Integrate "Argon" performance points counter with HUD layout 2024-03-05 03:58:43 +03:00
Salman Ahmed
d7f1e50d66 Add "Argon" performance points counter 2024-03-05 03:34:29 +03:00
Salman Ahmed
3ee57cdfba Refactor performance points test scene to support skinning 2024-03-05 03:34:25 +03:00
Salman Ahmed
92f455f199 Abstractify performance points calculation to a base class 2024-03-05 03:33:48 +03:00
Salman Ahmed
9543908c7a Fix mod select overlay settings order not always matching panels order 2024-03-04 23:36:45 +03:00
Bartłomiej Dach
6080c14dd5
Update F rank badge colours to match latest designs 2024-03-04 14:47:49 +01:00
Bartłomiej Dach
dcd6b02809
Fix incorrect implementation of GetCountMiss() for catch 2024-03-04 11:49:12 +01:00
Dan Balasescu
6635d9be04
Add countdown display 2024-03-04 16:50:24 +09:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local 2024-03-04 16:08:17 +09:00
Dan Balasescu
5bd037fe8f
Merge branch 'master' into catch-fail-on-banana 2024-03-04 13:13:26 +09:00
Andrei Zavatski
f5d24e6804 Remove unused transform extensions 2024-03-03 21:54:37 +03:00
Andrei Zavatski
7193ec66a4 Make use of framework's transform loops 2024-03-03 21:47:03 +03:00
Andrei Zavatski
c05007804f Use more direct way to apply transforms 2024-03-03 20:50:28 +03:00
Salman Ahmed
85f131d2f8 Fix "unranked explaination" tooltip text using incorrect translation key 2024-03-02 22:45:15 +03:00
Andrei Zavatski
77b3055978 Improve sb sprite end time guessing 2024-03-01 22:30:44 +03:00
Salman Ahmed
17e167cc1e
Merge branch 'master' into hide-beatmap-details 2024-03-01 16:21:03 +03:00
Dean Herbert
c6201ea5de
Remove unused ruleset parameter when testing beatmap in editor 2024-03-01 20:28:52 +08:00
Dan Balasescu
14519b9982
Merge pull request #27426 from peppy/disallow-backwards-seeks-gameplay
Fix gameplay seeking backwards for a single frame for some users
2024-03-01 20:08:23 +09:00
Dean Herbert
963c0af814
Fix beatmap information still showing when testing a beatmap 2024-03-01 16:43:47 +08:00
Dean Herbert
19ed78eef5
Log backwards seeks to sentry 2024-03-01 12:40:05 +08:00
cdwcgt
4ad8bbb9e2
remove useless DrawablePool 2024-03-01 13:20:37 +09:00
Dean Herbert
00527da27d
When discord is set to privacy mode, don't show beatmap being edited 2024-03-01 11:42:35 +08:00
Dean Herbert
91483bdc2f
Merge pull request #27001 from Susko3/windows-file-uri-association
Associate with files and URIs on windows
2024-03-01 11:26:44 +08:00
Dean Herbert
4b3a5bde28
Merge pull request #27424 from frenzibyte/taiko-slider-storyboard
Hide osu!taiko scroller when the beatmap has storyboard
2024-03-01 10:49:12 +08:00
Andrei Zavatski
eb0933c3a5 Fix allocations in EffectPointVisualisation 2024-02-29 20:35:20 +03:00
Dean Herbert
cc8b838bd4
Add comprehensive log output to help figure out problematic clocks 2024-02-29 23:05:28 +08:00
Dean Herbert
4184a5c1ef
Add flag to allow backwards seeks in tests 2024-02-29 23:05:28 +08:00
Huo Yaoyuan
a11e63b184 Make the code more clear 2024-02-29 20:02:04 +08:00
Dean Herbert
3a780e2b67
Add logging when workaround is hit 2024-02-29 18:27:50 +08:00
Dean Herbert
3355764a68
"Fix" tests 2024-02-29 18:21:44 +08:00
Bartłomiej Dach
9a40a4f700
Merge branch 'master' into convert-path-string-new 2024-02-29 08:51:04 +01:00
Bartłomiej Dach
ee2dac35e0
Merge branch 'master' into taiko-slider-storyboard 2024-02-29 08:50:58 +01:00
Dean Herbert
76e8aee9cc
Disallow backwards seeks during frame stable operation when a replay is not attached 2024-02-29 14:15:32 +08:00
Dean Herbert
f44aadaaa8
Merge pull request #27331 from bdach/statistics-updates-in-multi
Show user statistics updates on multiplayer and playlists results screens
2024-02-29 12:26:48 +08:00
Dean Herbert
5c404d0f61
Merge pull request #27361 from bdach/difficulty-peppy-stars-zero-osu
Fix incorrect standardised score estimation on selected beatmaps in osu! ruleset
2024-02-29 11:45:53 +08:00
Huo Yaoyuan
f28f19ed7e
Fix method indent size
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2024-02-29 10:47:16 +08:00
Salman Ahmed
7f5f3804f1 Expose beatmap storyboard as part of GameplayState 2024-02-29 05:39:36 +03:00
Salman Ahmed
a7a758400c
Merge branch 'master' into fix-wireframe 2024-02-29 01:56:50 +03:00
Salman Ahmed
8f97f0503f Move away from Solo namespace 2024-02-29 01:21:17 +03:00
Salman Ahmed
de48c51715 Apply renaming in remaining usages 2024-02-29 01:11:08 +03:00
Salman Ahmed
c3a7e99849 Remove unnecessary max operation 2024-02-29 01:01:55 +03:00
Salman Ahmed
4a4ef91bc9 Simplify active mods computation
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-02-29 00:42:52 +03:00
Salman Ahmed
92eb206b49
Merge branch 'master' into spectator-remove-back-button 2024-02-29 00:12:24 +03:00
Joseph Madamba
5ca6e8c68a Fix some NRT changes 2024-02-28 11:03:09 -08:00
Bartłomiej Dach
a5948d38ac
Merge pull request #27380 from frenzibyte/fix-advanced-stats-display
Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps
2024-02-28 18:02:48 +01:00
Huo Yaoyuan
e86ebd6cdb Fix formatting 2024-02-29 00:24:24 +08:00
Huo Yaoyuan
470d2be2e1 The overhead of LINQ is not ignorable 2024-02-29 00:07:00 +08:00
Bartłomiej Dach
6a3a7cca58
Merge branch 'master' into adjust-carousel-padding 2024-02-28 16:00:43 +01:00
Bartłomiej Dach
c10ba6ece9
Fix right mouse scroll clamping not going along well with padding
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2024-02-28 15:59:22 +01:00
Huo Yaoyuan
bcb91f348d Use ArrayPool instead of stackalloc 2024-02-28 22:51:36 +08:00
Huo Yaoyuan
fe34577ee2 Update parsing. 2024-02-28 22:42:08 +08:00
Huo Yaoyuan
4bff54d35d Add ToString on PathControlPoint for debugging 2024-02-28 22:37:14 +08:00
Bartłomiej Dach
9902dad4c6
Merge branch 'master' into log-global-statistics 2024-02-28 15:09:24 +01:00
Huo Yaoyuan
f49aa4d815 Parse points and segments for path string 2024-02-28 22:01:39 +08:00
Bartłomiej Dach
ce994a7a73
Fix wireframe misalignment in argon accuracy counter
- Closes https://github.com/ppy/osu/issues/27385.
- Supersedes / closes https://github.com/ppy/osu/pull/27392.
2024-02-28 13:42:45 +01:00
Bartłomiej Dach
3fb2662d74
Update framework
Mainly for the sake of https://github.com/ppy/osu-framework/pull/6196.
2024-02-28 12:05:33 +01:00
Joseph Madamba
6e03384c6b Apply NRT to SoloSpectatorPlayer 2024-02-28 00:01:16 -08:00
Joseph Madamba
8e462fbb38 Apply NRT to touched files 2024-02-27 23:58:28 -08:00
Joseph Madamba
dee57c7e72 Refactor test to only allow init of actions 2024-02-27 23:24:16 -08:00
Joseph Madamba
351160f94e Move back/quit button from bottom left to fail overlay when spectating 2024-02-27 23:24:16 -08:00
Dean Herbert
31f667224f
Merge branch 'master' into medals 2024-02-28 13:48:57 +08:00
Salman Ahmed
d83aeb73e4 Fix menu cursor tracing rotation while override by gameplay cursor 2024-02-28 01:02:36 +03:00
Bartłomiej Dach
2889cf39d7
Merge pull request #27391 from smoogipoo/high-performance-session-redux
Use high performance session during gameplay
2024-02-27 16:28:04 +01:00
Gabriel Del Nero
09dee50372
Change initial scroll animation to mod columns
Starting from the end (which should be fine with the current number of columns, even on different/wider screen resolutions), and with a custom decay value when it reaches zero offset.
2024-02-27 15:35:51 +01:00
Dean Herbert
189c680555
Add basic xmldoc on interface type 2024-02-27 20:46:25 +08:00
Dan Balasescu
069b400dd0
Move manager to desktop game 2024-02-27 19:36:03 +09:00
Dan Balasescu
dc3b41865c
Add logging 2024-02-27 19:17:34 +09:00
Dan Balasescu
f2d52fbaa2
Make class not overrideable 2024-02-27 17:33:24 +09:00
Dean Herbert
7f0a552b86
Merge pull request #27366 from EVAST9919/mod-overlay-performnce
Reduce allocations when `ModSelectOverlay` is visible
2024-02-27 08:54:18 +08:00
Salman Ahmed
3f9fbb9318 Introduce the concept of ActiveMods in mod select overlay and rewrite once more 2024-02-26 22:25:06 +03:00
Salman Ahmed
2b73d816a7 Bring back mod setting tracker in BeatmapAttributesDisplay 2024-02-26 22:24:45 +03:00
Bartłomiej Dach
3833f2cfa7
Merge pull request #27393 from peppy/main-menu-key-delay
Fix main menu eating keys if user presses too fast
2024-02-26 16:22:27 +01:00
Dean Herbert
fe59a3b9be
Merge branch 'master' into medals 2024-02-26 22:49:55 +08:00
Dean Herbert
4c6e8a606f
Fix main menu eating keys if user presses too fast 2024-02-26 22:24:39 +08:00
Dan Balasescu
bfb5098238
Use high performance session during gameplay 2024-02-26 22:32:48 +09:00
Dean Herbert
c686dfd361
Apply safeties for AudioFilter usage around drawables which go non-present 2024-02-26 21:22:25 +08:00
Dean Herbert
7a96cf1289
Expose AudioFilter.IsAttached publicly 2024-02-26 21:15:44 +08:00
Dan Balasescu
3e9425fdf2
Adjust API of HighPerformanceSession + rename 2024-02-26 22:12:46 +09:00
Bartłomiej Dach
09b420a083
Merge pull request #27234 from brandondong/delete_none_message
Add feedback to delete button even when no-op
2024-02-26 13:13:53 +01:00
Bartłomiej Dach
119a373285
Merge pull request #27389 from peppy/menu-hotkeys
Allow better menu navigation using same hotkey to progress to destination
2024-02-26 12:31:22 +01:00
Bartłomiej Dach
46ec477191
Merge pull request #27386 from peppy/fix-use-current-distance-snap
Fix "Use current" snap not working
2024-02-26 12:30:35 +01:00
Dean Herbert
8e336610d0
Add xmldoc explaining Ruleset bindable's usage 2024-02-26 18:31:40 +08:00
Bartłomiej Dach
353485a707
Merge branch 'master' into flashlight-playfield-based-size- 2024-02-26 10:55:06 +01:00
Bartłomiej Dach
115d82664b
Assert proportional scaling rather than assume average
Because if scaling is ever actually non-proportional then this should be
somewhat loud.

Also use the absolute value to prevent funny things happening if/when
someone does negative scale.
2024-02-26 10:53:04 +01:00
Dean Herbert
8962be2ed5
Allow better menu navigation using same hotkey to progress to destination
As touched on in https://github.com/ppy/osu/discussions/27102.

You can now use:

- `L L L` to get to playlists
- `M M M` to get to multiplayer
- `S` to get to settings
2024-02-26 17:24:04 +08:00
Dean Herbert
9a46e738bd
Fix inspections 2024-02-26 15:45:29 +08:00
Dean Herbert
4c744ccb69
Fix "Use current" snap not working
Regressed with https://github.com/ppy/osu/pull/27249.

I was suspicious of this specific operation at the time but didn't test properly.
2024-02-26 14:11:54 +08:00
Dean Herbert
4421ff975b
Add local function to perform iteration to better explain the "why" 2024-02-26 09:04:39 +08:00
Salman Ahmed
5c049feca1 Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps 2024-02-25 21:18:15 +03:00
Andrei Zavatski
9e3defebda Remove unused using 2024-02-25 19:05:40 +03:00
Andrei Zavatski
c3fa97d062 Reduce allocations in HitObjectLifetimeEntry 2024-02-25 18:02:42 +03:00
Andrei Zavatski
f948f8ee5c Fix HUDOverlay allocations 2024-02-25 17:59:20 +03:00
Andrei Zavatski
081aa84718 Simplify last footer button selection 2024-02-25 10:36:15 +03:00
Dean Herbert
e8d2abc4f7
Merge pull request #27364 from EVAST9919/spinner-alloc
Reduce osu spinner allocations
2024-02-25 09:36:02 +08:00
Andrei Zavatski
6d2187e079 Reduce allocations in ModSelectOverlay 2024-02-24 22:58:23 +03:00
Andrei Zavatski
3b53ed3c3a Reduce allocations in ModColumn 2024-02-24 22:44:58 +03:00
Andrei Zavatski
1fb19e7129 Reduce allocations in DrawableSpinner 2024-02-24 20:18:30 +03:00
Dan Balasescu
006416057b
Merge pull request #27144 from cdwcgt/allow-muted-ranked
Allow pp for muted mod for any combination of settings
2024-02-25 00:31:37 +09:00
Bartłomiej Dach
f6ceedc7a6
Inline last version which touched ranks when checking for upgrade 2024-02-24 13:55:44 +01:00
Bartłomiej Dach
4bc92a263f
Bump score version 2024-02-24 13:20:42 +01:00
Bartłomiej Dach
e80b08c46f
Fix incorrect standardised score estimation on selected beatmaps 2024-02-24 09:56:58 +01:00
Dean Herbert
05f0b4796c
Merge pull request #27344 from bdach/editor-combo-colours-rotate
Fix editor displaying combo colours in effectively incorrect order
2024-02-24 10:44:02 +08:00
Salman Ahmed
d4bc3090e7 Fix incorrect conflict resolution 2024-02-23 18:42:07 +03:00
Salman Ahmed
618819ba9f Merge branch 'master' into freemod_mapinfo_fix 2024-02-23 18:34:41 +03:00
Salman Ahmed
c1db9d7819 Add test coverage 2024-02-23 18:16:44 +03:00
Bartłomiej Dach
869f0a82de
Use hashset for faster lookup 2024-02-23 15:38:52 +01:00
Salman Ahmed
fdc0636554 General code cleanup 2024-02-23 17:31:54 +03:00
Salman Ahmed
9ce07a96b2 Rewrite mods flow and remove RoomBeatmapAttributesDisplay 2024-02-23 17:30:13 +03:00
Salman Ahmed
323d7f8e2d Change BeatmapAttributesDisplay retrieval to proper method 2024-02-23 16:59:43 +03:00
Salman Ahmed
918577d530 Compute required mods list once per update 2024-02-23 16:53:41 +03:00
Bartłomiej Dach
f86b7f0702
Enable NRT in EditorBeatmapSkin 2024-02-23 14:52:44 +01:00
Salman Ahmed
f94cd4483c Avoid relying on game-wide ruleset bindable 2024-02-23 16:50:33 +03:00
Salman Ahmed
ae9c58be30 Remove "multiplayer" references from subclass and move to appropriate place 2024-02-23 16:50:33 +03:00
Bartłomiej Dach
d1d32fc16c
Fix editor displaying combo colours in effectively incorrect order
Addresses https://github.com/ppy/osu/discussions/27316.

Stable lies about the first combo colour being first; in the `.osu`
file it is actually second. It does a thing in editor itself to correct
for this.

    https://github.com/peppy/osu-stable-reference/blob/master/osu!/GameModes/Edit/Forms/SongSetup.cs#L233-L234
2024-02-23 14:49:46 +01:00
Dean Herbert
157819c199
Materialise realm collection hashes during song select search process
Without this, there's a large overhead to do a realm-live `Contains`
search when a collection is selected.

This may also help considerably alleviate
https://github.com/ppy/osu/discussions/27298#discussioncomment-8552508
as we will be performing the native realm search much less.
2024-02-23 11:41:27 +08:00
Brandon
6c8204f9a3 Update delete collections message when none 2024-02-22 19:40:02 -08:00
Brandon
d6beae2ce1 Update delete/restore mod presets message when none 2024-02-22 19:10:15 -08:00
Brandon
01d0ad506d Merge branch 'master' into delete_none_message 2024-02-22 17:37:26 -08:00
Bartłomiej Dach
eac4c5f69d
Rename {Solo -> User}StatisticsWatcher et al.
The "solo" prefix is a bit unbecoming now. The updates are not only
for solo.
2024-02-22 20:36:24 +01:00
Bartłomiej Dach
1e53503608
Show user statistics after completing a playlists / multiplayer score 2024-02-22 20:35:50 +01:00
Bartłomiej Dach
0074bdc5a1
Change ResultsScreen constructor boolean params to init-only properties 2024-02-22 20:15:03 +01:00
Bartłomiej Dach
f9e92c69a8
Merge branch 'master' into fix-skin-editor-init-fail 2024-02-22 14:08:38 +01:00
Bartłomiej Dach
82b2edd4b7
Merge pull request #26769 from EVAST9919/results-clean
Rework `AccuracyCircle` to not use `BufferedContainer`s
2024-02-22 13:46:28 +01:00
Bartłomiej Dach
49b7f0e3a7
Merge pull request #26531 from smallketchup82/multiplayer-difficulty-tooltip
Implement difficulty tooltips for multiplayer lobbies
2024-02-22 12:57:35 +01:00
Bartłomiej Dach
7861125e7a
Swap AR and OD on tooltips
Matches everything else.
2024-02-22 12:11:49 +01:00
Bartłomiej Dach
46c8560ca5
Merge branch 'master' into multiplayer-difficulty-tooltip 2024-02-22 12:08:29 +01:00
Bartłomiej Dach
d06c67ad8f
Substitute two jank interdependent bool flags for single tri-state enums 2024-02-22 12:05:50 +01:00
Bartłomiej Dach
6770b73e4e
Merge pull request #27192 from smoogipoo/mod-search-ignore-whitespace
Adjust search terms for mods
2024-02-22 11:41:31 +01:00
Bartłomiej Dach
84fdcd24ef
Remove description from mod search terms
Closes https://github.com/ppy/osu/issues/27111.
2024-02-22 11:02:08 +01:00
Bartłomiej Dach
1a831145ce
Merge branch 'master' into fix-bpm-differences 2024-02-22 10:41:22 +01:00
Dean Herbert
8b24c6a905
Merge pull request #27299 from BoudewijnPopkema/27272-clear-remembered-username
Clear stored username/token from config when relevant checkboxes are unticked on login panel
2024-02-22 17:29:36 +08:00
Bartłomiej Dach
81a9908c60
Extract common helper for BPM rounding 2024-02-22 10:27:37 +01:00
Bartłomiej Dach
01f6ab0336
Use more correct implementation 2024-02-22 09:44:59 +01:00
Bartłomiej Dach
a1046f0a86
Revert "clear remembered username when checkbox is unticked"
This reverts commit d01421b951.
2024-02-22 09:40:27 +01:00
Bartłomiej Dach
57bb0b85a1
Merge pull request #27107 from Joehuu/rank-highest-tooltip
Add highest rank tooltip to global rank display
2024-02-22 09:08:22 +01:00
Boudewijn Popkema
d01421b951 clear remembered username when checkbox is unticked 2024-02-21 23:15:37 +01:00
Andrei Zavatski
4cefa8bb8d Reduce allocations in TimelineBlueprintContainer 2024-02-21 23:13:10 +03:00
Dean Herbert
fc30abc7b0
Merge branch 'indented-code-block' into update-framework 2024-02-21 21:44:25 +08:00
Dean Herbert
9d732bd9b1
Merge branch 'remove-legacy-gl' into update-framework 2024-02-21 21:44:19 +08:00
Dean Herbert
6d32cfb7ee
Update framework 2024-02-21 21:39:33 +08:00
Dean Herbert
fb593470d5
Use DEFAULT instead of INSTANCE or static field
Matches other similar comparers.
2024-02-21 21:02:20 +08:00
Bartłomiej Dach
929858226a
Use custom comparer in beatmap carousel for expected sort behaviour 2024-02-21 12:43:18 +01:00
Bartłomiej Dach
59235d6c50
Implement custom comparer for expected carousel sort behaviour
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2024-02-21 12:43:17 +01:00
Dean Herbert
9c40ff2911
Merge pull request #27278 from EVAST9919/grid-update
Apply padding to `GridContainer`s directly where possible
2024-02-21 17:29:21 +08:00
Andrei Zavatski
2543a48ac8 Apply padding to GridContainers directly 2024-02-20 23:18:37 +03:00
Andrei Zavatski
871bdb9cf7 Reduce string allocations in TimeInfoContainer 2024-02-20 20:31:18 +03:00
Bartłomiej Dach
33a0dcaf20
NRT-annotate MedalAnimation and fix possible nullref 2024-02-20 17:59:21 +01:00
Andrei Zavatski
6678c4783b Fix PlaybackControl string allocations 2024-02-20 19:31:28 +03:00
Bartłomiej Dach
9b938f333d
Fix test failures 2024-02-20 17:25:11 +01:00
Bartłomiej Dach
1db5cd3aba
Move medal overlay to topmost container 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
611e3fe76b
Delay medal display when wanting to show results animation 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
96825915f7
Fix threading failure
Implicitly showing the medal overlay fires off some transforms, and the
websocket listener runs on a TPL thread. That's a recipe for disaster,
so schedule the show call.
2024-02-20 16:31:31 +01:00
Bartłomiej Dach
8abcc70b93
Add medal overlay to game 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
b334b78b63
Make medal overlay respect overlay disable via activation mode 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
e4971ae121
Add display queueing when multiple medals are granted in quick succession 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
2e5b61302a
Implement basic medal display flow 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
4f321e242b
Enable NRT in OsuFocusedOverlayContainer 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
4911f5208b
Demote medal "overlay" to animation
I need the actual overlay to be doing way more things (receiving the
actual websocket events, queueing the medals for display, handling
activation mode), so the pre-existing API design of the overlay just
will not fly.
2024-02-20 16:31:31 +01:00
Bartłomiej Dach
48bf9680e1
Add new structures for receiving new medal data 2024-02-20 16:31:31 +01:00
Bartłomiej Dach
4a314a8e31
Namespacify data structures used in websocket communications 2024-02-20 16:31:31 +01:00
Givikap120
ed028e8d26 Update MultiplayerModSelectOverlay.cs 2024-02-20 13:13:13 +02:00
Givikap120
8199a49ee2 minor look changes 2024-02-20 13:11:19 +02:00
Givikap120
a4288e7ecc removed unnecessary changes 2024-02-20 13:00:59 +02:00
Givikap120
54ef397d56 Changed override method
now it overrides mods getter instead of calculate fuctions
2024-02-20 12:57:28 +02:00
Dean Herbert
ef413c08f1
Merge pull request #27249 from EVAST9919/editor-alloc
Reduce osu editor allocations with many objects selected
2024-02-20 15:06:25 +08:00
Dan Balasescu
40d6e8ce85
Remove legacy OpenGL renderer option, it's now just OpenGL 2024-02-20 15:14:30 +09:00
Dean Herbert
3ea47e64f0
Merge pull request #27258 from Loreos7/storage-error-localisation
Localise storage error popup dialog
2024-02-20 13:37:10 +08:00
Joseph Madamba
2ff8667dd2 Revert "Centralise global rank display logic to new class"
Also don't show on `LoginOverlay` usage for now.
2024-02-19 12:11:12 -08:00
Andrei Zavatski
c758640311 Reduce allocations in ComposerDistanceSnapProvider 2024-02-19 20:49:56 +03:00
Susko3
24e3fe79a4 Log GlobalStatistics when exporting logs from settings 2024-02-19 17:02:53 +01:00
Mike Will
012d6b7fe1 Change userBeatmapOffsetClock to a FramedOffsetClock
Assuming that the global audio offset is set perfectly, such that
any audio latency is fully accounted for, if a specific beatmap
still sounds out of sync, that would no longer be a latency issue.

Instead, it would indicate a misalignment between the beatmap's
track and time codes, the correction for which should be a
virtual-time offset, not a real-time offset.
2024-02-19 09:14:49 -05:00
Dean Herbert
c87bc8b597
Merge pull request #27180 from bdach/better-submission-failure-messaging
Add better submission failure messaging
2024-02-19 21:38:23 +08:00
Bartłomiej Dach
ec26ab51d1
Use different wording 2024-02-19 13:56:21 +01:00
Bartłomiej Dach
d7b1e3ba50
Merge pull request #27226 from peppy/no-audio-filter-funny-business
Ensure audio filters can't be attached before load (or post-disposal)
2024-02-19 13:01:34 +01:00
Dean Herbert
398eaee5d0
Merge pull request #27238 from bdach/disable-nested-managers-when-skin-editor-open
Disable nested input managers on edited screen when skin editor is open
2024-02-19 19:27:26 +08:00
Bartłomiej Dach
f5666185ab
Merge pull request #27239 from peppy/fix-cached-beatmap
Fix `WorkingBeatmapCache` caching beatmap in wrong state leading to crash
2024-02-19 12:06:45 +01:00
Bartłomiej Dach
1ca566c6b0
Disable nested input managers on edited screen when skin editor is open 2024-02-19 10:19:25 +01:00
Dean Herbert
7f82f10317
Fix beatmap potentially loading in a bad state
Over-caching could mean that a beatmap could load and cause a late
crash. Let's catch it early to avoid such a crash occurring.
2024-02-19 17:18:07 +08:00
Brandon
413b7aab60 Switch to const string 2024-02-18 22:12:03 -08:00
Brandon
c6ca812ea0 Add feedback to delete button even when no-op 2024-02-18 21:52:23 -08:00
maromalo
5a448ce02f Turn BPMDisplay to RollingCounter<int> 2024-02-18 19:59:56 -03:00
Dean Herbert
998d820666
Ensure audio filters can't be attached before load (or post-disposal)
Will probably fix https://github.com/ppy/osu/issues/27225?
2024-02-19 00:25:01 +08:00
Dean Herbert
6b6a6aea54
Apply NRT to LogoTrackingContainer 2024-02-18 23:35:26 +08:00
Dean Herbert
882f11bf79
Fix logo tracking container being off by one frame
This was especially visible at the main menu when running in single thread mode.
2024-02-18 23:19:57 +08:00
Dean Herbert
415a65bf59
Add failing tests for beatmap inconsistencies 2024-02-18 19:32:21 +08:00
Dean Herbert
4d4d69521f
Merge pull request #27114 from EVAST9919/judgements-rework
Cache created judgement in `HitObject`
2024-02-18 18:07:58 +08:00
Dean Herbert
9655e8c48a
Adjust xmldoc slightly 2024-02-18 17:54:29 +08:00
Dean Herbert
715236765a
Merge pull request #27206 from EVAST9919/selection-enumerators
Reduce allocations during beatmap selection
2024-02-18 10:02:35 +08:00
Givikap120
24171bd02b Update MultiplayerModSelectOverlay.cs 2024-02-18 03:34:02 +02:00
Givikap120
a6b63efe7d Fixed NVika code quality errors 2024-02-18 03:28:24 +02:00
Givikap120
9070e973d3 Update BeatmapAttributesDisplay.cs 2024-02-18 03:16:18 +02:00
Givikap120
4aaf016ee0 quality improvements 2024-02-18 03:15:53 +02:00
Givikap120
6fb3192648 Update BeatmapAttributesDisplay.cs 2024-02-18 03:14:36 +02:00
Givikap120
2df5787dc7 Packed changes into separate class 2024-02-18 03:13:57 +02:00
Salman Ahmed
91675e0970 Update markdown code block implementation in line with framework changes 2024-02-18 02:00:55 +03:00
Givikap120
ed819fde15 Fixed bugs and added ranked status update 2024-02-17 23:01:31 +02:00
Givikap120
cd8ac6a722 Update BeatmapAttributesDisplay.cs 2024-02-17 22:12:15 +02:00
Dean Herbert
6960f87509
Merge pull request #26895 from vmfunc/ordinal-sorting
Consider case sensitivity when sorting beatmaps in song select
2024-02-18 04:05:22 +08:00
Dean Herbert
71afb8881a
Merge pull request #27199 from EVAST9919/link-compiler-alloc
Fix `DrawableLinkCompiler` allocations
2024-02-18 04:04:34 +08:00
Dean Herbert
520576a0fd
Merge pull request #27193 from bdach/fix-not-working-metadata-hub-cleanup
Fix a few issues in metadata hub's disconnection requested flow
2024-02-18 03:46:02 +08:00
Andrei Zavatski
dd82de473a Revert BeatmapCarousel changes 2024-02-17 22:42:47 +03:00
Dean Herbert
62a7e315bf
Update framework 2024-02-18 03:11:29 +08:00
Andrei Zavatski
22f5a66c02 Reduce allocations during beatmap selection 2024-02-17 15:46:38 +03:00
Joseph Madamba
7a74eaa2de Fix star counter decrease animation being delayed when current is over displayed star count 2024-02-16 22:47:38 -08:00
Joseph Madamba
6e8d8b977e Move ternary inside Math.Max() 2024-02-16 22:47:38 -08:00
Andrei Zavatski
b0f334c39e Fix DrawableLinkCompiler allocations 2024-02-17 00:45:30 +03:00
Andrei Zavatski
060b01eee8 Make CreateJudgement public again and add remarks 2024-02-16 20:24:02 +03:00
Andrei Zavatski
dd32c0a226 Merge branch 'master' into judgements-rework 2024-02-16 20:08:57 +03:00
Bartłomiej Dach
1049be7d72
Add extended xmldoc to DisconnectRequested()
Just expounds on what the previous commit message said.
2024-02-16 13:09:36 +01:00
Bartłomiej Dach
b4aa247032
Do not attempt to stop watching user presence when requested to disconnect
First of all, this sort of cleanup isn't really the client's
responsibility, and secondly, at the point the client received this
request to disconnect, *none of its requests will be honored anymore*
(currently the only scenario of this if another client has connected
- the server-side concurrency filter will reject this request).

When disconnection is requested, the only valid thing to do with respect
to talking to the server is to stop doing it.

This will be moved server-side in a follow-up change, although I'm not
even strictly sure that's required - I'd like to think signalr would
know to clean up a disconnecting client from all groups they were in.
2024-02-16 13:08:39 +01:00
Bartłomiej Dach
9fa60b169e
Actually disconnect from metadata hub when requested to
Nothing in this override, on in the base implementation, would actually
attempt to disconnect.
2024-02-16 12:58:50 +01:00
Bartłomiej Dach
171270d99c
Fix missing RPC method mapping
Thanks, signalr.
2024-02-16 12:58:13 +01:00
Dan Balasescu
0fff9d4937
Add non-whitespace search term for mods 2024-02-16 19:17:41 +09:00
Salman Ahmed
583e71634f Always bring master/music volume to 50% 2024-02-16 11:20:07 +03:00
Salman Ahmed
952c5b0d18 Use Precision.AlmostBigger 2024-02-16 11:13:41 +03:00
Salman Ahmed
9f53185fa9 Revert changes to muted notification action 2024-02-16 10:47:56 +03:00
Salman Ahmed
df40f55c07
Merge branch 'master' into mute_detection 2024-02-16 01:35:02 +03:00
Salman Ahmed
7530b1f362 Adjust comment again 2024-02-16 01:31:52 +03:00
Salman Ahmed
5431781f80 Bring back target volume to 50% 2024-02-16 01:23:26 +03:00
Salman Ahmed
d81b148b09 Remove mention of decibel units in comment
Decibels are irrelevant in the volume bindables, as mentioned in PR already.
2024-02-16 01:23:18 +03:00
Salman Ahmed
a9eac5924d Remove seemingly unnecessary float casts 2024-02-16 01:18:13 +03:00
Dean Herbert
c1d9f53ab4
Merge pull request #27068 from smoogipoo/mania-hd-fi-progression
Add progressive coverage for mania's Hidden and FadeIn mods
2024-02-16 01:00:53 +08:00
Dean Herbert
e91d38872d
Update framework 2024-02-15 18:28:59 +08:00
Bartłomiej Dach
898d5ce88b
Show selected submission failure messages even in solo
Previously, if a `SubmittingPlayer` instance deemed it okay to proceed
with gameplay despite submission failure, it would silently log all
errors and proceed, but the score would still not be submitted. This
feels a bit anti-user in the cases wherein something is genuinely wrong
with either the client or web, so things like token verification
failures or API failures are now shown as notifications to give the user
an indication that something went wrong at all.

Selected cases (non-user-playable mod, logged out, beatmap is not
online) are still logged silently because those are either known and
expected, or someone is messing with things.
2024-02-15 10:55:08 +01:00
Bartłomiej Dach
95e745c6fb
Use better messaging for selected submission failure reasons
These have been cropping up rather often lately, mostly courtesy of
linux users, but not only:

	https://github.com/ppy/osu/issues/26840
	https://github.com/ppy/osu/issues/27008
	https://github.com/ppy/osu/discussions/26962

so this is a proposal for slightly improved messaging for such cases to
hopefully get users on the right track.

The original error is still logged to network log, so there's no
information loss.
2024-02-15 10:51:27 +01:00
Bartłomiej Dach
e10c4c7079
Merge pull request #27176 from peppy/document-classic-mod-no-rank
Add inline documentation as to why classic mod is not ranked
2024-02-15 09:22:05 +01:00
Dean Herbert
409dfd33e7
Merge pull request #27178 from Joehuu/truncate-osu-dropdown-items
Truncate long dropdown menu item text and show tooltip
2024-02-15 16:11:36 +08:00
Joseph Madamba
3d08bc5605 Truncate long dropdown menu item text and show tooltip 2024-02-14 23:01:51 -08:00
Dean Herbert
9e9297bfb3
Add inline documentation as to why classic mod is not ranked
See https://github.com/ppy/osu/pull/27149#issuecomment-1939509941.
2024-02-15 13:22:54 +08:00
Dean Herbert
728f65b6d3
Merge pull request #27173 from EVAST9919/song-select-sort
Reduce allocations during aggregate beatmap sorts in song-select screen
2024-02-15 12:50:16 +08:00
Joseph Madamba
a03835bf1c Improve comments 2024-02-14 20:13:27 -08:00
Dean Herbert
674ee91bb5
Define aggregate max delegates as static to further reduce allocations 2024-02-15 11:40:50 +08:00
Dean Herbert
80abf6aab3
Avoid some further enumerator allocations 2024-02-15 09:45:24 +08:00
Andrei Zavatski
6e1b4152c0 Redice allocations during aggregate beatmap sort 2024-02-15 00:01:55 +03:00
Dean Herbert
59efd22ba2
Merge branch 'master' into score-statistics-updates-working-2 2024-02-15 02:55:12 +08:00
Dean Herbert
9ec79755fb
Standardise font specs 2024-02-15 02:54:28 +08:00
Dean Herbert
c175e03600
Inline rolling duration variable 2024-02-15 02:53:38 +08:00
Bartłomiej Dach
c588b81cee
Merge pull request #27163 from frenzibyte/ignore-soft-deleted-beatmaps-in-notification
Ignore soft-deleted beatmaps when trying to present from notification
2024-02-14 18:07:59 +01:00
Bartłomiej Dach
aae431e8f6
Cancel rolling properly 2024-02-14 16:48:31 +01:00
Bartłomiej Dach
53884f61c3
Apply suggested changes 2024-02-14 16:41:41 +01:00
Bartłomiej Dach
ae9a2661ac
Sprinkle some raw string prefixes 2024-02-14 16:20:47 +01:00
Bartłomiej Dach
414066fd34
Inline problematic function (and rename things to make more sense) 2024-02-14 16:07:42 +01:00
Bartłomiej Dach
a8ae0a032f
Simplify parsing 2024-02-14 15:58:38 +01:00
Dean Herbert
3da1d05d98
Merge branch 'master' into ignore-soft-deleted-beatmaps-in-notification 2024-02-14 22:56:47 +08:00
Bartłomiej Dach
c24328dda3
Abandon date filter if no meaningful time bound found during parsing 2024-02-14 15:56:32 +01:00
Bartłomiej Dach
f0f37df67f
Revert unnecessary change 2024-02-14 15:37:02 +01:00
Bartłomiej Dach
1113355753
Merge branch 'master' into add-last-played-filter 2024-02-14 15:36:19 +01:00
Bartłomiej Dach
2c0a5b7ef5
Fix missing tiny droplet not triggering fail with perfect on
Stable does this:

    46cd3a10af/osu!/GameplayElements/HitObjectManagerFruits.cs#L98-L102

I'd rather not say what I think about it doing that, since it's likely
to be unpublishable, but to approximate that, just make it so that
only the "default fail condition" is beholden to the weird ebbs
and flows of what the ruleset wants. This appears to fix the problem
case and I'm hoping it doesn't break something else but I'm like 50/50
on it happening anyway at this point. Just gotta add tests add nauseam.
2024-02-14 14:21:48 +01:00
Bartłomiej Dach
68247fa022
Fix typo in json property name
Would cause the mapper badge to never actually be shown in the real
world.
2024-02-14 13:21:37 +01:00
Bartłomiej Dach
8312f92b4e
Use better value for alignment 2024-02-14 12:24:28 +01:00
Bartłomiej Dach
153024e61b
Increase transition durations slightly
Maybe slightly better readability. Dunno.
2024-02-14 10:16:10 +01:00
Bartłomiej Dach
6baa099906
Fix broken delay 2024-02-14 10:12:01 +01:00
Salman Ahmed
4d3b605e04 Add support for displaying "mapper" badges in comments 2024-02-14 04:17:55 +03:00
Salman Ahmed
72c6134dbf Include commentable object metadata in comments 2024-02-14 04:16:36 +03:00
Salman Ahmed
c4e358044a Add API models for comment page metadata 2024-02-14 04:16:36 +03:00
Salman Ahmed
5267e0abf7 Move comment author line to separate component 2024-02-14 04:16:36 +03:00
Salman Ahmed
35649d137c Ignore soft-deleted beatmaps when trying to present from notification 2024-02-14 02:04:20 +03:00
Bartłomiej Dach
eae43f5fd9
Consume SoloStatisticsWatcher updates in toolbar button 2024-02-13 14:28:24 +01:00
Bartłomiej Dach
14052ae1cc
Implement transient stats display on user toolbar button 2024-02-13 14:28:24 +01:00
Bartłomiej Dach
21b9fb95e2
Move SoloStatisticsWatcher to OsuGame
Doesn't feel like it needs to be in base, and it being in base was
causing problems elsewhere before.
2024-02-13 14:28:24 +01:00
Bartłomiej Dach
da4ebd0681
Refactor SoloStatisticsWatcher to no longer require explicit subscription callbacks 2024-02-13 13:49:01 +01:00
Bartłomiej Dach
16d893d40c
Fix draining processor failing gameplay on bonus misses and ignore hits 2024-02-13 13:06:19 +01:00
Dean Herbert
f7a223f328
Merge pull request #27053 from frenzibyte/unranked-pp-placeholder
Add support for displaying "unranked PP" placeholder
2024-02-13 18:59:55 +08:00
Dan Balasescu
833997bf1d
Merge pull request #27143 from bdach/more-stringent-metadata-checks
Use more stringent checks when applying online metadata
2024-02-13 17:10:52 +09:00
Salman Ahmed
2d65dfbf09 Fix Rider EAP whoopsie 2024-02-12 22:10:36 +03:00
Salman Ahmed
4f0f07d55a Remove placeholder classes and inline everything 2024-02-12 21:30:10 +03:00
Bartłomiej Dach
5d81d83fb2
Merge branch 'master' into alias-author-creator 2024-02-12 18:02:42 +01:00
cdwcgt
1944a12634
allow ModMuted to ranked when setting adjusted 2024-02-12 21:18:31 +09:00
Bartłomiej Dach
138fea8c38
Only apply set-level metadata after all difficulties have been processed 2024-02-12 12:08:51 +01:00
Bartłomiej Dach
87702b3312
Only check online matching when determining whether to save online metadata
After https://github.com/ppy/osu/pull/23362 I'm not sure the
`LocallyModified` check is doing anything useful. It was confusing me
really hard when trying to parse this logic, and it can misbehave (as
`None` will also pass the check).
2024-02-12 12:07:20 +01:00
Bartłomiej Dach
4f0ae4197a
Refuse to apply online metadata in the most dodgy scenarios 2024-02-12 11:43:41 +01:00
Salman Ahmed
2ae616a88e Combine other cases of displaying dash in scores PP 2024-02-12 12:29:33 +03:00
Stoppedpuma
ca0819cf7a Alias "mapper" as well 2024-02-11 20:28:16 +01:00
Andrei Zavatski
5e692345de Don't convert pixel data to array 2024-02-11 17:44:54 +03:00
Dean Herbert
1df38b54a1
Merge branch 'master' into refactor-metadata-lookup-sources 2024-02-11 20:10:41 +08:00
Dean Herbert
7dba21fdac
Move init method to bottom of file 2024-02-11 20:05:58 +08:00
tsunyoku
901b82384d replace linq usage in Previous and Next with more direct computation 2024-02-10 15:42:55 +00:00
Dean Herbert
32bfd875d9
Merge pull request #26930 from Susko3/suggest-update-only-if-available
Suggest to update only if the latest release is available for the current platform
2024-02-10 22:08:56 +08:00
Bartłomiej Dach
4a516cbccd
Merge pull request #27077 from peppy/log-fire-and-forget-better
Improve exception logging of unobserved exceptions via `FireAndForget`
2024-02-10 13:43:50 +01:00
Bartłomiej Dach
c3f0d3ad5c
Merge branch 'master' into match-profile-icons 2024-02-10 13:08:42 +01:00
Dan Balasescu
bfeb90c1b6
Add additional gameplay metadata to room score request 2024-02-10 17:20:17 +09:00
Stoppedpuma
7c04e8bfba Alias author to creator
Allows "author" to show the results of "creator"
2024-02-10 07:48:24 +01:00
Dean Herbert
01501f3b82
Merge branch 'master' into refactor-metadata-lookup-sources 2024-02-10 14:43:51 +08:00
Joseph Madamba
7b0b39dbaa Fix total play time tooltip area including label 2024-02-09 16:06:16 -08:00
Joseph Madamba
ffd0d9bb39 Add highest rank tooltip to global rank display 2024-02-09 16:06:16 -08:00
Joseph Madamba
ae89b89928 Centralise global rank display logic to new class 2024-02-09 16:06:16 -08:00
Joseph Madamba
8d1d65a469 Add ContentTooltipText to ProfileValueDisplay 2024-02-09 16:06:16 -08:00
Joseph Madamba
c9c39ecb2f Add RankHighest to APIUser 2024-02-09 16:06:16 -08:00
Joseph Madamba
ed2362b63d Fix icon family and weight not transferring to text conversion 2024-02-09 14:31:38 -08:00
Joseph Madamba
666c57da50 Fix profile current location and interests icons not matching web 2024-02-09 14:31:37 -08:00
Andrei Zavatski
c500264306 Cache created judgement in HitObject 2024-02-09 23:20:31 +03:00
Berkan Diler
6adf0ac01e Use new LINQ Order() instead of OrderBy() when possible 2024-02-08 18:01:00 +01:00
Susko3
7864810fc9 Merge branch 'master' into windows-file-uri-association 2024-02-07 23:10:13 +01:00
Dan Balasescu
dcb195f3c8
Add delayed resume for taiko/catch/mania 2024-02-08 02:16:08 +09:00
Dan Balasescu
7f3646f2d1
Merge pull request #27069 from bdach/populate-legacy-total-score-when-converting
Populate `TotalScoreInfo` when converting `SoloScoreInfo` to `ScoreInfo`
2024-02-08 01:33:31 +09:00
Dean Herbert
0d7e82ab8d
Improve exception logging of unobserved exceptions via FireAndForget
Coming from https://github.com/ppy/osu/issues/27076, where the log
output makes finding where the exception arrived for nigh impossible.
2024-02-08 00:25:11 +08:00
Bartłomiej Dach
706a16677c
Use localised string 2024-02-07 13:38:05 +01:00
Bartłomiej Dach
3f51148719
Update resources 2024-02-07 13:37:37 +01:00
Bartłomiej Dach
f22828bc50
Flip ifs to reduce nesting 2024-02-07 13:36:46 +01:00
Bartłomiej Dach
9a3c947319
Remove unnecessary #nullable disable 2024-02-07 13:35:12 +01:00
Dean Herbert
b0bd1a80cf
Merge branch 'master' into hide-ruleset-selector-kudosu 2024-02-07 16:52:05 +08:00
Dean Herbert
b68a1699d4
Merge pull request #27067 from bdach/exponential-backoff
Use staggered exponential backoff when retrying in `PersistentEndpointClientConnector`
2024-02-07 16:51:49 +08:00
Dean Herbert
21e5ae5ba9
Minor adjustments 2024-02-07 16:46:59 +08:00
Joseph Madamba
8f59cb7659 Hide ruleset selector when on kudosu ranking 2024-02-06 13:18:22 -08:00
Dan Balasescu
44b1515cc5
Remove LangVersion redefintions 2024-02-07 03:28:40 +09:00
Andrei Zavatski
ff7cd67909 Move all the circles into their own container 2024-02-06 21:14:36 +03:00
Andrei Zavatski
f03c4a0961 Merge branch 'master' into results-clean 2024-02-06 21:09:23 +03:00
Bartłomiej Dach
9314de640f
Populate TotalScoreInfo when converting SoloScoreInfo to ScoreInfo
For use in https://github.com/ppy/osu-tools/pull/195.
2024-02-06 18:30:48 +01:00
Dean Herbert
e055d61e50
Merge pull request #27059 from bdach/grayscale
Convert selected legacy skin sprites to grayscale
2024-02-06 22:59:39 +08:00
Dan Balasescu
5bc7befbd4
Add progressive cover to mania HD and FI mods 2024-02-06 23:47:20 +09:00
Bartłomiej Dach
6ffe8e1713
Use staggered exponential backoff when retrying in PersistentEndpointClientConnector
There are suspicions that the straight 5s retry could have caused a
situation a few days ago for `osu-server-spectator` wherein it was
getting hammered by constant retry requests. This should make that
a little less likely to happen.

Numbers chosen are arbitrary, but mostly follow stable's bancho retry
intervals because why not. Stable also skips the exponential backoff in
case of errors it considers transient, but I decided not to bother for
now.

Starts off from 3 seconds, then ramps up to up to 2 minutes. Added
stagger factor is 25% of duration, either direction. The stagger factor
helps given that if spectator server is dead, each client has three
separate connections to it which it will retry on (one to each hub).
2024-02-06 15:40:30 +01:00
Bartłomiej Dach
c21af1bf3d
Use more explicit match
`taiko-bar-right-glow` is a prefix of `taiko-bar-right`...
2024-02-06 14:53:01 +01:00
Dean Herbert
d784934bce
Merge pull request #26935 from bdach/new-mods-for-pp
Allow a few new mods and mod settings for pp
2024-02-06 20:54:20 +08:00
Bartłomiej Dach
8df593a8e6
Allow pp for No Scope
Deemed as not affecting difficulty or pp in
https://github.com/ppy/osu/pull/26935#issuecomment-1925644008,
so can be treated pretty much as nomod.
2024-02-06 13:04:19 +01:00
Bartłomiej Dach
27b97a3c4d
Convert selected legacy skin sprites to grayscale
Matching stable.

Closes https://github.com/ppy/osu/issues/9858.

I would have liked to apply this in the taiko transformer itself, but
the limited accessibility of texture uploads, and as such the raw image
data, sort of prevents that...
2024-02-06 12:33:37 +01:00
Dan Balasescu
c18cd65081
Merge pull request #26694 from chandler14362/hit-object-result-allocations
Avoid closure allocations when applying hit object results
2024-02-06 17:49:26 +09:00
Bartłomiej Dach
86e1e57fab
Merge pull request #27054 from Loreos7/update-related-notifications-localisation
Localise update-related process strings
2024-02-06 09:07:58 +01:00
Dan Balasescu
ca36919f10
Merge pull request #26863 from EVAST9919/scrolling-alloc
Further reduce allocation overhead in `ScrollingHitObjectContainer`
2024-02-06 15:57:31 +09:00
Andrei Zavatski
fc4234214e Merge branch 'master' into results-clean 2024-02-06 08:03:10 +03:00
Salman Ahmed
b78c6ed673 Update design of "unprocessed PP" placeholder to match web 2024-02-05 23:29:24 +03:00
Salman Ahmed
6b7ffc240b Support displaying "unranked PP" placeholder 2024-02-05 23:29:24 +03:00
Salman Ahmed
4be4ed7ab2 Add "ranked" attribute to scores 2024-02-05 23:29:24 +03:00
Bartłomiej Dach
938bbe38b7
Merge pull request #27033 from frenzibyte/fix-rooms-container-something
Fix selected room bindable being set to null regardless of the removed room
2024-02-05 21:04:34 +01:00
Bartłomiej Dach
07c257f387
Merge pull request #26942 from Loreos7/import-from-stable-localisation
Localise remaining strings on import screen of the first-run setup
2024-02-05 20:01:47 +01:00
Bartłomiej Dach
aff7e1fb8c
Merge pull request #27015 from Loreos7/settings-remaining-strings-localisation
Localise remaining strings in settings section
2024-02-05 20:00:42 +01:00
Bartłomiej Dach
f65449375e
Merge branch 'master' into scrolling-alloc 2024-02-05 19:59:47 +01:00
Bartłomiej Dach
951b69d0d5
Merge branch 'master' into fix-rooms-container-something 2024-02-05 19:56:54 +01:00
Bartłomiej Dach
4b5348bbbf
Merge branch 'master' into ur-alloc 2024-02-05 19:14:08 +01:00
Bartłomiej Dach
7b03bebd5f
Move algorithm description to remarks section of xmldoc 2024-02-05 18:57:57 +01:00
Bartłomiej Dach
a5aeb2ff9e
Use better variable names
It's not the 1970s. We can spare a few extra letters.
2024-02-05 18:56:20 +01:00
Bartłomiej Dach
c12a7b3edf
Merge branch 'master' into fix-rooms-container-something 2024-02-05 18:51:46 +01:00
Bartłomiej Dach
1582536f04
Merge pull request #26924 from EVAST9919/user-card-containers
Rework `UserPanel`s to reduce container nesting
2024-02-05 18:46:42 +01:00
Bartłomiej Dach
462a1c5186
Merge pull request #27021 from frenzibyte/fix-rooms-container-performance
Fix multiplayer/playlists lounge screen disposing rooms synchronously
2024-02-05 18:33:13 +01:00
Bartłomiej Dach
26e4b0bacb
Merge branch 'master' into settings-remaining-strings-localisation 2024-02-05 18:07:03 +01:00
Bartłomiej Dach
87381334ff
Use more proper method of formatting 2024-02-05 18:06:51 +01:00
Bartłomiej Dach
2932184d24
Rename localisable string 2024-02-05 18:05:21 +01:00
Dean Herbert
48d42ca7d3
Update framework 2024-02-05 23:58:10 +08:00
Salman Ahmed
7914236516 Add explanatory note 2024-02-05 18:51:30 +03:00
Loreos7
8e82327509 one more dot 2024-02-05 18:45:32 +03:00
Loreos7
4449ccd1d3 bring back missing dot 2024-02-05 18:44:18 +03:00
Salman Ahmed
858f2fc749 Use Clear to trigger async disposal 2024-02-05 18:39:04 +03:00
Bartłomiej Dach
23694c2067
Merge branch 'master' into import-from-stable-localisation 2024-02-05 16:32:12 +01:00
Bartłomiej Dach
148e01327b
Split copy info text into two rather than parameterise
I have very low hopes translators would be able to correctly navigate
this otherwise (especially in languages with different word order).
2024-02-05 16:30:04 +01:00
Bartłomiej Dach
fa894bda05
Fix broken spacing 2024-02-05 16:25:44 +01:00
Bartłomiej Dach
9e1a24fdef
Remove pointless enum 2024-02-05 16:20:50 +01:00
Bartłomiej Dach
e4ef2bdeb9
Merge pull request #26734 from Joehuu/fix-edit-mod-preset-button-flow
Fix edit mod preset popover buttons overflowing on some languages
2024-02-05 16:10:37 +01:00
Bartłomiej Dach
3e29a9c334
Merge pull request #26877 from smoogipoo/adjust-default-minresult
Adjust default min result of `SliderTailHit`, remove override
2024-02-05 14:15:38 +01:00
Dean Herbert
cc5e1e0af3
Merge pull request #26957 from smoogipoo/net8
Update to .NET 8 + C# 12
2024-02-05 20:59:31 +08:00
Susko3
01efd1b353 Move WindowsAssociationManager to osu.Desktop 2024-02-05 13:44:12 +01:00
Bartłomiej Dach
39fe078984
Merge branch 'master' into hit-object-result-allocations 2024-02-05 13:24:10 +01:00
Bartłomiej Dach
2976f225e0
Improve xmldoc of state param 2024-02-05 13:22:58 +01:00
Bartłomiej Dach
efe6bb25b1
Refactor result application around again to remove requirement for fields
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-02-05 13:21:01 +01:00
Bartłomiej Dach
ad69259eb8
Merge branch 'master' into fix-results-f-rank 2024-02-05 13:05:37 +01:00
Salman Ahmed
44a594ba05 Simplify playback logic 2024-02-05 01:03:04 +03:00
Salman Ahmed
6f9ee3f526 Fix selected room bindable being set to null regardless of the removed room 2024-02-05 00:37:33 +03:00
Salman Ahmed
9923c1b6e6 Fix multiplayer/playlists lounge screen disposing rooms synchronously 2024-02-04 17:25:58 +03:00
Bartłomiej Dach
83df6297d2
Merge branch 'master' into new-mods-for-pp 2024-02-04 12:20:31 +01:00
Dean Herbert
c64d414d1b
Merge pull request #26934 from bdach/which-mods-for-pp
Display which mods grant pp
2024-02-04 19:15:11 +08:00
Andrei Zavatski
4e5c9ddbfe Rename notch const to spacing 2024-02-04 03:02:39 +03:00
Andrei Zavatski
397def9ceb Move layout specification outside the GradedCircles class 2024-02-04 02:58:15 +03:00
Andrei Zavatski
7b2adc857a Merge branch 'master' into results-clean 2024-02-04 02:41:12 +03:00
Susko3
cdcf5bddda Uninstall associations when uninstalling from squirrel 2024-02-03 17:56:14 +01:00
Andrei Zavatski
e2e3c61c9c Use AliveEntries where we don't need startTime order 2024-02-03 19:54:08 +03:00
Andrei Zavatski
4aa27482a9 Use SlimReadOnlyDictionaryWrapper for AliveEntries 2024-02-03 19:54:08 +03:00
Susko3
03578821c0 Associate on startup 2024-02-03 17:04:06 +01:00
Susko3
498d93be61 Add way to associate with files and URIs on Windows 2024-02-03 16:59:48 +01:00
Loreos7
24e5c7ed42 fix formatting 2024-02-03 02:02:21 +03:00
Andrei Zavatski
57bc5ee04f Improve readability 2024-02-03 00:19:04 +03:00
Loreos7
4d324a3057 localise remaining parts of the game settings 2024-02-03 00:08:36 +03:00
Andrei Zavatski
dde7e068a4 Incorporate new unstable rate algo 2024-02-02 22:46:52 +03:00
Mike Will
9a5348598a Replace aggregate rounding method with a float cast 2024-02-02 14:22:24 -05:00
Mike Will
2ab967f783 Increase precision of aggregate volume rounding
It should be large enough to account for true accuracy
but small enough to disregard any hair-thin inaccuracy found
at the very end of the float value.
2024-02-02 13:27:26 -05:00
Bartłomiej Dach
8454f7a991
Merge branch 'master' into net8 2024-02-02 16:27:32 +01:00
Dan Balasescu
50f9c61029
Fix multiplayer tests 2024-02-02 22:34:48 +09:00
Dan Balasescu
8e8ba9e77f
Fix more CI inspections 2024-02-02 21:36:41 +09:00
Loreos7
20504c55ef localise storage error popup dialog 2024-02-02 15:32:55 +03:00
Dan Balasescu
c8b4ff2b47
Fix compile error (reserved name) 2024-02-02 21:28:51 +09:00
Dan Balasescu
6e4d52863c
Upgrade to .NET 8 SDK 2024-02-02 21:28:51 +09:00
Dan Balasescu
20ae88b0a0
Revert unnecessary changes 2024-02-02 21:05:50 +09:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections 2024-02-02 21:00:28 +09:00
Mike Will
29a2890582 fix code quality error #2 2024-02-02 03:47:19 -05:00
Dan Balasescu
8c107b4925
Merge pull request #26950 from bdach/2fa-in-registration
Add 2FA verification screen to registration flow
2024-02-02 17:30:20 +09:00
Mike Will
c60e110976 Try to fix code quality issues raised by workflow 2024-02-02 03:09:19 -05:00
Mike Will
f4a2d5f3f4 Round off inaccuracies in the aggregate volume before evaluating 2024-02-02 02:41:58 -05:00
Mike Will
3122211268 Change silence threshold and target restore volume level 2024-02-02 02:12:46 -05:00
Dan Balasescu
108375975d
Merge pull request #26940 from EVAST9919/playfield-mods-alloc
Reduce allocation overhead in `Playfield`
2024-02-02 15:45:46 +09:00
Bartłomiej Dach
a00cf87925
Add 2FA verification screen to registration flow 2024-02-02 07:25:04 +01:00
Bartłomiej Dach
45f60b035e
Enable NRT in AccountCreationOverlay 2024-02-02 07:24:32 +01:00
Bartłomiej Dach
93d34e4115
Enable NRT in ScreenWarning 2024-02-02 07:24:32 +01:00
Bartłomiej Dach
b58ac7950b
Make game dependency in ScreenEntry optional to unbreak tests 2024-02-02 07:24:32 +01:00
Bartłomiej Dach
bb6387bea0
Enable NRT in ScreenEntry 2024-02-02 07:24:32 +01:00
Mike Will
dfd966e039 Improve silence detection in MutedNotification
Instead of checking the master and music volumes separately to
see if they're <= 1%, check the aggregate of the two volumes to
see if it's <= -60 dB.

When muted notification is activated, restore the aggregate volume
level to -30 dB.
2024-02-02 00:48:42 -05:00
Bartłomiej Dach
2ff46daf5e
Also change icon and tooltip text when pending 2FA 2024-02-02 06:40:56 +01:00
Andrei Zavatski
53c5483eba Reduce allocation in Playfield 2024-02-02 04:53:48 +03:00
Loreos7
8dce158a13 localise update-related strings 2024-02-02 04:49:22 +03:00
Loreos7
7884e5808a localise remaining strings 2024-02-02 04:47:13 +03:00
Salman Ahmed
0502997ae9 Stop blocking player loader when hovering over osu! logo 2024-02-02 01:26:04 +03:00
Salman Ahmed
4dbcb41dd1 Remove unused parameter 2024-02-02 00:44:51 +03:00
Bartłomiej Dach
ea76f7a5d8
Allow pp for Double/Half Time's "adjust pitch" setting 2024-02-01 22:33:49 +01:00
Bartłomiej Dach
96f66aaa2e
Allow pp for Accuracy Challenge
Addresses https://github.com/ppy/osu/discussions/26919.
2024-02-01 22:30:26 +01:00
Bartłomiej Dach
c114fd8f89
Allow pp for Sudden Death and Perfect regardless of "restart on fail" setting
Closes https://github.com/ppy/osu/issues/26844.
2024-02-01 22:28:49 +01:00
Bartłomiej Dach
865f4d76ff
Add unranked indicator to song select footer too 2024-02-01 21:51:41 +01:00
Bartłomiej Dach
f87ab19731
Apply NRT to FooterButtonMods 2024-02-01 21:32:38 +01:00
Bartłomiej Dach
966093f7ce
Transform score multiplier display to also show ranked state 2024-02-01 21:32:37 +01:00
Susko3
f92751a7d2 Don't suggest an update on mobile if it isn't available 2024-02-01 18:56:38 +01:00
Susko3
b9d750cfee Convert to try-get and don't fall back to release URL 2024-02-01 18:55:34 +01:00
Susko3
b0095ee548 Apply NRT 2024-02-01 18:38:18 +01:00
OliBomby
576d6ff799 Fix masking in circular snap grid 2024-02-01 17:07:57 +01:00
OliBomby
f807a3fd97 Remove Masking from PositionSnapGrid
This caused issues in rendering the outline of the grid because the outline was getting masked at some resolutions.
2024-02-01 16:57:45 +01:00
OliBomby
1428cbfbc3 Remove Masking from PositionSnapGrid
This caused issues in rendering the outline of the grid because the outline was getting masked at some resolutions.
2024-02-01 16:56:57 +01:00
Andrei Zavatski
66350fd148 Refactor UserRankPanel layout 2024-02-01 16:33:54 +03:00
Andrei Zavatski
2bd9dcf646 Rework UserGridPanel to reduce containers nesting 2024-02-01 16:22:07 +03:00
Salman Ahmed
5bbaeb6836 Play legacy applause sound only when rank is B or higher 2024-02-01 16:08:36 +03:00
syscats
0407b5d84a
use ordinal sorting on each method 2024-02-01 14:03:59 +01:00
Salman Ahmed
35c3f5e250 Merge branch 'master' into fix-results-f-rank 2024-02-01 15:29:07 +03:00
Dean Herbert
bf3746daa8
Show login overlay at main menu when 2FA is required 2024-02-01 21:10:53 +09:00
Dean Herbert
563f4a26b1
Show "failing" icon on user panel when 2FA prompt is present
This gives the user a chance to know it's required.
2024-02-01 21:10:37 +09:00
syscats
7165511754 Use ordinal sorting for artist string comparison 2024-01-31 15:49:31 +01:00
Bartłomiej Dach
f89923aeae
Annotate mods that give pp 2024-01-31 14:59:35 +01:00
Dan Balasescu
0642d74014
Expose as ReadOnlyDictionary 2024-01-31 22:52:57 +09:00
Bartłomiej Dach
e71c95f1fe
Reintroduce IMod.Ranked
What goes around, comes around.
2024-01-31 14:48:35 +01:00
Dean Herbert
4248593289
Fix menu banner not updating as often as we want it to 2024-01-31 22:44:24 +09:00
Dean Herbert
56700d672b
Merge pull request #26837 from bdach/2fa-not-verifying-via-link
Fix 2FA verification via link not working correctly
2024-01-31 19:15:33 +09:00
Bartłomiej Dach
e7cfbd3c56
Merge pull request #26876 from peppy/slider-miss-last-longer
Adjust slider tick / end misses to show slightly longer
2024-01-31 10:43:58 +01:00
Dean Herbert
19fe3a15f3
Merge branch 'master' into 2fa-not-verifying-via-link 2024-01-31 18:32:55 +09:00
Dean Herbert
edab05672b
Merge pull request #26834 from bdach/2fa-cancel-crash
Fix crash when logging out during 2FA email verification
2024-01-31 18:32:33 +09:00
Dan Balasescu
0642a0ee11
Adjust default min result of SliderTailHit, remove override 2024-01-31 18:01:29 +09:00
Dean Herbert
fbc923b47e
Revert "Merge pull request #26870 from smoogipoo/adjust-default-minresult"
This reverts commit 1acff746ee, reversing
changes made to 696ecda398.
2024-01-31 17:51:38 +09:00
Dean Herbert
1acff746ee
Merge pull request #26870 from smoogipoo/adjust-default-minresult
Adjust default min result of SliderTailHit, remove override
2024-01-31 17:49:58 +09:00
Dean Herbert
ebf637bd3c
Adjust slider tick / end misses to show slightly longer 2024-01-31 17:41:26 +09:00
Dean Herbert
a7f9f50ce5
Show a better message when score submission fails due to system clock being set wrong 2024-01-31 16:52:50 +09:00
Dean Herbert
3f527081bd
Update framework 2024-01-31 16:12:46 +09:00
Dan Balasescu
9b1bbe5f48
Adjust default min result of SliderTailHit, remove override 2024-01-31 16:12:05 +09:00
Andrei Zavatski
6b1de5446a Reduce allocaations in ScrollingHitObjectContainer 2024-01-31 07:54:28 +03:00
Andrei Zavatski
3aefc91967 Make AliveDrawableMap public 2024-01-31 07:54:07 +03:00
Bartłomiej Dach
c5e118bd10
Revert "Move fade more local to avoid fading twice"
This reverts commit d0421fe206
and fixes https://github.com/ppy/osu/issues/26801.

https://github.com/ppy/osu/pull/26703#discussion_r1469409667
was correct in saying that the early fade-out needs to be restored, and
that's because of the early-return. Legacy judgements that are the
temporary displayed judgement from new piece should also receive the
fade-out, and d0421fe206 broke that.
2024-01-30 22:16:46 +01:00
Bartłomiej Dach
4126dcbe28
Fix 2FA verification via link not working correctly
Closes https://github.com/ppy/osu/issues/26835.

I must have not re-tested this correctly after all the refactors...

Basically the issue is that the websocket connection would only come
online when the API state changed to full `Online`. In particular
the connector would not attempt to connect when the API state was
`RequiresSecondFactorAuth`, giving the link-based flow no chance to
actually work.

The change in `WebSocketNotificationsClientConnector` is relevant in
that queueing requests does nothing before the API state changes to full
`Online`. It also cleans up things a bit code-wise so... win?

And yes, this means that the _other_ `PersistentEndpointClientConnector`
implementations (i.e. SignalR connectors) will also come online earlier
after this. Based on previous discussions
(https://github.com/ppy/osu/pull/25480#discussion_r1395566545) I think
this is fine, but if it is _not_ fine, then it can be fixed by exposing
a virtual that lets a connector to decide when to come alive, I guess.
2024-01-30 21:49:06 +01:00
Bartłomiej Dach
000ddc14ac
Fix broken locking in OAuth
Closes https://github.com/ppy/osu/issues/26824... I think?

Can be reproduced via something like

diff --git a/osu.Game/Online/API/OAuth.cs b/osu.Game/Online/API/OAuth.cs
index 485274f349..e6e93ab4c7 100644
--- a/osu.Game/Online/API/OAuth.cs
+++ b/osu.Game/Online/API/OAuth.cs
@@ -151,6 +151,11 @@ internal string RequestAccessToken()
         {
             if (!ensureAccessToken()) return null;

+            for (int i = 0; i < 10000; ++i)
+            {
+                _ = Token.Value.AccessToken;
+            }
+
             return Token.Value.AccessToken;
         }

The cause is `SecondFactorAuthForm` calling `Logout()`, which calls
`OAuth.Clear()`, _while_ the `APIAccess` connect loop is checking if
`authentication.HasValidAccessToken` is true, which happens to
internally check `Token.Value.AccessToken`, which the clearing of
tokens can brutally interrupt.
2024-01-30 21:05:23 +01:00
Dean Herbert
d895a91cd5
Update endpoints to final production endpoints 2024-01-30 18:40:17 +09:00
Dean Herbert
99f4b2c113
Merge pull request #26788 from EVAST9919/scrolling-alloc
Reduce allocation overhead in `ScrollingHitObjectContainer`
2024-01-30 14:06:27 +09:00
Andrei Zavatski
87f853fcd2 Reduce overhead in ScrollingHitObjectContainer 2024-01-30 00:59:31 +03:00
Bartłomiej Dach
6888cda02c
Make LegacyScoreDecoder.PopulateMaximumStatistics() public
For `osu-tools` consumption.
2024-01-29 21:42:38 +01:00
Dean Herbert
b3919bff56
Merge pull request #26780 from bdach/fix-websocket-very-bad-not-good
Fix incorrect handling of `StartChatRequest` in websocket chat client
2024-01-30 05:11:55 +09:00
Bartłomiej Dach
1fbc92ca7e
Merge branch 'master' into fix-song-select-osu-logo-position 2024-01-29 20:11:52 +01:00
Bartłomiej Dach
acc2614090
Apply alternative solution
Fixes the logo flying out of the wrong corner when transitioning from
song select to gameplay.

Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-01-29 20:07:27 +01:00
Bartłomiej Dach
996ae0ecc1
Fix incorrect handling of StartChatRequest in websocket chat client
Fixes this happening on staging:

	[network] 2024-01-29 17:48:24 [verbose]: WebSocketNotificationsClientConnector connected!
	[network] 2024-01-29 17:48:24 [verbose]: WebSocketNotificationsClientConnector connect attempt failed: Can't use WaitSafely from inside an async operation.

I'm not sure how I ever allowed that `.WaitSafely()` to be there. It
did feel rather dangerous but then I must have forgotten and never
noticed it failing. Which is weird because you'd think that would be
caught by testing that chat isn't working but I'm pretty sure that I
tested that chat *was* indeed working.

Anyway now that entire flow is replaced by something that should
hopefully be somewhat more sane? It has a whole retry flow with logging
now which should be more robust than what was there previously (failing
to start to listen to chat events killing the entire websocket
connection for very little good reason).
2024-01-29 19:22:40 +01:00
Dean Herbert
16c06169ed
Update framework 2024-01-30 01:06:32 +09:00
Bartłomiej Dach
2667cb8b36
Merge pull request #26703 from peppy/smaller-slider-misses
Adjust slider tick / end defaults again
2024-01-29 13:51:07 +01:00
Dean Herbert
f2546d72c2
Fix osu! logo being mispositioned in song select on very wide resolutions 2024-01-29 20:45:51 +09:00
Dean Herbert
811b31386b
Merge pull request #26616 from peppy/dont-round-sv 2024-01-29 20:42:38 +09:00
Dean Herbert
f1c1d9cb14
Merge pull request #26772 from peppy/update-framework
Update framework
2024-01-29 20:15:01 +09:00
Bartłomiej Dach
11ec8a1cad
Merge branch 'master' into dont-round-sv 2024-01-29 11:52:46 +01:00
Bartłomiej Dach
8a11ff1227
Apply local precision workaround to editor effect section 2024-01-29 11:52:38 +01:00
Dean Herbert
a1fe5eedd5
Merge pull request #26751 from frenzibyte/fix-multiplayer-fail-freezing-score
Fix score processor no longer applying results when failing in multiplayer match
2024-01-29 19:51:31 +09:00
Dean Herbert
1efdf2ae25
Update framework 2024-01-29 19:45:56 +09:00
Dean Herbert
8341da7586
Revert "Remove dead code" (mostly)
This reverts commit 6070eac6ee.
2024-01-29 19:43:40 +09:00
Dean Herbert
dc28a6b873
Update resources 2024-01-29 19:33:13 +09:00
Dean Herbert
cbbe2f9dc0
Merge pull request #25480 from peppy/2fa
Add two factor authentication flow
2024-01-29 19:14:55 +09:00
Dean Herbert
540ff0da5b
Add loading layer when requesting a code reissue 2024-01-29 17:54:34 +09:00
Bartłomiej Dach
4c5dacd559
Merge pull request #26770 from peppy/fucking-hitobject-references
Fix `OsuPlayfield` being retained indefinitely after gameplay
2024-01-29 09:40:56 +01:00
Dean Herbert
6a469f2cb6
Use switch instead of if-else 2024-01-29 17:18:17 +09:00
Bartłomiej Dach
96811a8874
Fix APIAccess spamming requests while waiting for second factor 2024-01-29 09:14:30 +01:00
Bartłomiej Dach
363fd1d54f
Remove no longer relevant changes 2024-01-29 09:05:03 +01:00
Dean Herbert
4a2602a775
Merge branch 'master' into 2fa 2024-01-29 16:57:29 +09:00
Dean Herbert
48fc0545c2
Merge pull request #26724 from bdach/decouple-notification-websocket-from-chat
Decouple notifications websocket handling from chat operations
2024-01-29 16:57:13 +09:00
Dean Herbert
ef94eff574
Rename PollingChatClientConnector to better describe usage 2024-01-29 16:56:28 +09:00
Dean Herbert
fb24c66342
Mark ResultsScreen.Score as nullable
Is nullable in playlist results at very least.
2024-01-29 16:43:26 +09:00
Dean Herbert
760368709a
Mark some delegates as static because we can 2024-01-29 16:16:28 +09:00
Dean Herbert
eb90ee5415
Add safety in ResultsScreen.Exit to ensure HitEvents are not holding references
This is a catch-all safety disconnecting `ScoreInfo` from `HitObject`s.
2024-01-29 16:16:17 +09:00
Dean Herbert
76832a1495
Remove ScorePerformanceCache
This class was only used in two places, both on the results screen, but
was holding references to `OsuPlayfield` game-wide (due to unrelated
issues, but still).

Because I can't really think of future use cases for this, and running
the calculation twice at results screen isn't a huge overhead, let's
just do that for now to keep things simple.
2024-01-29 15:28:20 +09:00
Dean Herbert
de32e7815b
Clean up DrawableHitObject events on Dispose
This is just general safeties to avoid cases where
components don't correctly unbind events.
2024-01-29 15:28:20 +09:00
Andrei Zavatski
0c0ba7abef Adjust values to visually match previous 2024-01-29 06:28:38 +03:00
Andrei Zavatski
3987faa21c Rework GradedCircles to not use BufferedContainer 2024-01-29 06:13:52 +03:00
Andrei Zavatski
809ca81b9c Add TestSceneGradedCircles 2024-01-29 05:29:29 +03:00
Andrei Zavatski
9c411ad48d Simplify notch math 2024-01-29 05:19:28 +03:00
Andrei Zavatski
5783838b07 Move graded circles into a separate class 2024-01-29 05:14:24 +03:00
Andrei Zavatski
32b0e0b738 Remove RankNotch 2024-01-29 05:05:18 +03:00
Andrei Zavatski
5d456c8d68 Rework drawing of graded circles 2024-01-29 04:55:21 +03:00
Dean Herbert
462dab3c90
Remove unnecessary bindable 2024-01-29 02:13:39 +09:00
Dean Herbert
f4dd84fa77
Fix various inconsistencies and document better 2024-01-29 02:10:33 +09:00
Dean Herbert
23f12e1ea3
Should not be a container 2024-01-29 01:50:27 +09:00
Andrei Zavatski
b48f99ba4b Stop using SliderBar as a base 2024-01-28 18:06:09 +03:00
Andrei Zavatski
ed9e0fe1db Merge branch 'master' into progress-bar-improvements 2024-01-28 17:59:29 +03:00
Salman Ahmed
64b61108ad Move solution to multiplayer flow instead 2024-01-28 00:42:04 +03:00
Salman Ahmed
5f68999893 Fix TestSceneFailJudgement asserts no longer being correct 2024-01-27 23:23:32 +03:00
Salman Ahmed
a25be9927d Fix score processor no longer applying results when failing in multiplayer match 2024-01-27 23:23:10 +03:00
Salman Ahmed
ea641bb8d2 Rename GameplayState.HasFailed to properly clarify its meaning 2024-01-27 23:23:10 +03:00
Andrei Zavatski
9d73d0e04d Clamp logo triangles along both axes 2024-01-27 19:06:04 +03:00
Salman Ahmed
b25f4455d5
Merge branch 'master' into fix-edit-mod-preset-button-flow 2024-01-27 18:01:16 +03:00
Dean Herbert
4c34d2e352
Update framework 2024-01-27 20:21:27 +09:00
Dean Herbert
3cad5fe292
Merge pull request #26704 from peppy/new-logo
Update logo
2024-01-27 19:34:22 +09:00
Andrei Zavatski
3387565ba9 Fix song progress value may go beyond 1 2024-01-27 03:11:12 +03:00
Andrei Zavatski
567d2bedbf Refactor ArgonSongProgress for same CurrentTime meaning 2024-01-27 03:03:01 +03:00
Joseph Madamba
bb6c7a0a82 Fix edit mod preset popover buttons overflowing on some languages 2024-01-26 15:26:22 -08:00
Salman Ahmed
d25262944e Force results screen to play default D rank applause sound on fail (regardless of skin) 2024-01-27 01:46:43 +03:00
Salman Ahmed
47f0b86018 Fix results screen showing other rank badges on F rank 2024-01-27 01:46:12 +03:00
Dean Herbert
9dc2a1d6f8
Update resources 2024-01-27 01:02:16 +09:00
Bartłomiej Dach
b39b112548
Merge branch 'decouple-notification-websocket-from-chat' into 2fa 2024-01-26 11:21:33 +01:00
Bartłomiej Dach
243c2bc9b4
Make sure the polling connector actually auto-starts itself 2024-01-26 11:21:23 +01:00
Bartłomiej Dach
a2e69d37e8
Add basic testing of failure flow 2024-01-26 11:17:32 +01:00
Dean Herbert
cf97cb1e0c
Merge branch 'master' into dont-round-sv 2024-01-26 19:16:58 +09:00
Bartłomiej Dach
04cae874b0
Handle forced logouts due to password change too 2024-01-26 10:53:27 +01:00
Dean Herbert
347e88f597
Add note about using static callback 2024-01-26 16:21:48 +09:00
Dean Herbert
45f2980dc0
Fix potential editor data loss if exiting while a textbox is focused 2024-01-26 13:59:32 +09:00
Dean Herbert
6e3eb674f6
Move cast to local function and make direct cast 2024-01-26 12:55:36 +09:00
Andrei Zavatski
9b5b313193 Move common logic into own SongProgressBar class 2024-01-26 05:03:40 +03:00
Andrei Zavatski
d2af05b30e Remove useless bindable from ArgonSongProgressBar 2024-01-26 04:09:00 +03:00
Andrei Zavatski
542f571dee Remove LINQ cast in HUDOverlay 2024-01-26 01:03:22 +03:00
Chandler Stowell
93bd3ce5ae update DrawableHitCircle.ApplyResult to pass this to its callback 2024-01-25 11:25:41 -05:00
Dean Herbert
14067c2e57
Remove unused using statements 2024-01-26 00:39:29 +09:00
Bartłomiej Dach
3d3506b906
Merge branch 'decouple-notification-websocket-from-chat' into 2fa 2024-01-25 14:51:42 +01:00
Bartłomiej Dach
c463aa5ba1
xmldoc everything 2024-01-25 14:47:29 +01:00
Bartłomiej Dach
de52f0a80c
Decouple notifications websocket handling from chat operations
This is a prerequisite for https://github.com/ppy/osu/pull/25480.

The `WebSocketNotificationsClient` was tightly coupled to chat specifics
making it difficult to use in the second factor verification flow.
This commit's goal is to separate the websocket connection and message
handling concerns from specific chat logic concerns.
2024-01-25 14:47:29 +01:00
Dean Herbert
6a338ce555
Adjust spawn ratio up slightly 2024-01-25 21:59:38 +09:00
Dean Herbert
3f9c2b41f7
Adjust BeatSyncContainer's early animate offset based on source's rate 2024-01-25 21:40:37 +09:00
Dean Herbert
d66a2c452f
Merge branch 'master' into multiplayer-difficulty-tooltip 2024-01-25 21:18:16 +09:00
Dean Herbert
50300adef8
Tidy things up 2024-01-25 21:17:56 +09:00
Dean Herbert
aeac0a2a9d
Nullability 2024-01-25 21:16:12 +09:00
Dean Herbert
3c18efed05
Remove transparency 2024-01-25 21:13:47 +09:00
Dean Herbert
64ba95bbd6
Remove pointless comments 2024-01-25 21:13:47 +09:00
Dean Herbert
baaf33d995
Merge pull request #26689 from myQwil/divisor_cycle
Prevent custom divisor ranges from halting divisor preset cycling
2024-01-25 20:46:16 +09:00
Dean Herbert
4a629fbc79
Update logo to new version 2024-01-25 20:37:50 +09:00
Dean Herbert
56a9b059e9
Add back ScaleAdjust to triangles 2024-01-25 20:37:50 +09:00
OliBomby
c2d57dc77c Merge remote-tracking branch 'upstream/master' into edit-nodesample 2024-01-25 11:33:29 +01:00
Dean Herbert
107b37494e
Update triangles skin judgment display 2024-01-25 19:31:57 +09:00
Dean Herbert
d0421fe206
Move fade more local to avoid fading twice 2024-01-25 19:31:57 +09:00
Dean Herbert
6070eac6ee
Remove dead code 2024-01-25 19:31:57 +09:00
Dean Herbert
dda96d7106
Rename JudgementPiece to TextJudgementPiece 2024-01-25 19:31:57 +09:00
Dean Herbert
8aea6e07c3
Change slider end miss colour to gray 2024-01-25 19:31:57 +09:00
Mike Will
a264ac9f38 Change name and description of force parameter in SetArbitraryDivisor 2024-01-25 05:12:54 -05:00
Nguyên Minh Hồ
d5b70ed09a Move CanRotatePlayfieldOrigin bindable to generic rotation handler 2024-01-25 16:58:44 +07:00
Nguyên Minh Hồ
2fa52de87a Fix formatting 2024-01-25 16:29:44 +07:00
Bartłomiej Dach
088397b0c3
Merge pull request #26699 from peppy/fix-log-save-failure
Add retry loop to avoid log export failing occasionally on windows
2024-01-25 09:51:14 +01:00
Bartłomiej Dach
3e13fb87f2
Merge pull request #26700 from peppy/accuracy-circle-crash
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
2024-01-25 09:32:47 +01:00
Nguyên Minh Hồ
94ada87cba Un-hardcode tooltip from EditorRadioButton and add disabled tooltip for rotation popover 2024-01-25 14:32:48 +07:00
Nguyên Minh Hồ
500bed0121 Split editor toolbox radio button disabling logic from EditorRadioButton, then add disabling logic for rotate popover 2024-01-25 14:24:35 +07:00
Dean Herbert
cc341b4119
Adjust beatmap carousel padding to avoid scrollbar disappearing underneath logo 2024-01-25 15:21:19 +09:00
Dean Herbert
45b4edcd23
Merge pull request #26697 from LeNitrous/add/scaled-screenshot
Crop screenshots to scaling container
2024-01-25 15:03:56 +09:00
Dean Herbert
37e370e654
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
Closes https://github.com/ppy/osu/issues/26692.
2024-01-25 15:02:44 +09:00
Dean Herbert
69e822f3c5
Refactor crop logic slightly 2024-01-25 14:30:26 +09:00
Dean Herbert
85927e0682
Move configuration retrieval to non-bindable inline for readability 2024-01-25 14:22:27 +09:00
Dean Herbert
0cbba7e011
Apply NRT to ScreenshotManager 2024-01-25 14:18:20 +09:00
Nguyên Minh Hồ
e1f8bc9692 Rename CanRotate property of SelectionRotationHandler to a more descriptive name 2024-01-25 12:10:50 +07:00
Dean Herbert
d2990170d0
Add retry loop to avoid log export failing occasionally on windows
Closes https://github.com/ppy/osu/issues/26693.
2024-01-25 13:53:36 +09:00
Nitrous
b20051fd55
offset crop rectangle to scaling container 2024-01-25 10:35:41 +08:00
Nitrous
30e335233d
Crop screenshot image to scaling container. 2024-01-25 09:27:10 +08:00
Andrei Zavatski
7811968582 Fix ArgonScoreCounter is still using localisation 2024-01-25 03:28:02 +03:00
Mike Will
9e1c242713 Prevent custom divisor ranges from halting preset cycling
A custom divisor like 24 or 32 will result in a range containing
many divisors that are already in the `Common` and `Triplets` presets.
When this happens, it can become impossible to cycle between presets,
because the preset can only be changed if the new divisor isn't already
contained within the current preset's range.
2024-01-24 18:31:39 -05:00
Andrei Zavatski
67010fcd03 Reduce allocation overhead in ScoreCounter 2024-01-24 23:45:07 +03:00
Bartłomiej Dach
e3eb7a8b42
Support verification via clicking link from e-mail 2024-01-24 21:35:58 +01:00
Bartłomiej Dach
62a0c236bc
Split out raw websocket logic from conjoined notifications client contrivance 2024-01-24 21:35:30 +01:00
Bartłomiej Dach
602c3bc2d9
Hook up reissue request 2024-01-24 21:35:21 +01:00
Bartłomiej Dach
445a7450e0
Implement verification from within client 2024-01-24 21:35:20 +01:00
Chandler Stowell
d2775680e6 use stack to pass action state when applying hit results
this removes closure allocations
2024-01-24 13:13:45 -05:00
Bartłomiej Dach
ddc2bbeb9b
Add session_verified attribute to /me response 2024-01-24 14:24:33 +01:00
Bartłomiej Dach
7b47215657
Split /me request from /users requests
Them being together always bothered me and led to the abject failure
that is `APIUser` and its sprawl. Now that I'm about to add a flag that
is unique to `/me` for verification purposes, I'm not repeating the
errors of the past by adding yet another flag to `APIUser` that is never
present outside of a single usage context.
2024-01-24 14:22:57 +01:00
Bartłomiej Dach
7c140408ea
Add request structures for verification endpoints 2024-01-24 13:53:40 +01:00
Dean Herbert
b272d34960
Merge pull request #26630 from peppy/s-rank-change
Change S rank to require no miss
2024-01-24 13:27:40 +09:00
Bartłomiej Dach
5d26afc531
Fix OsuGameTestScene not clearing second auth factor 2024-01-23 17:00:16 +01:00
Bartłomiej Dach
2cfaa1c103
Merge branch 'master' into 2fa 2024-01-23 16:51:23 +01:00
Bartłomiej Dach
871683a3dc
Merge pull request #26674 from peppy/use-better-enumerator
Reduce enumerator overhead in `GameplayLeaderboard`
2024-01-23 16:31:17 +01:00
Bartłomiej Dach
0486c77a74
Merge pull request #26680 from peppy/fix-now-playing-centering
Fix now playing beatmap backgrounds not being correctly centred
2024-01-23 16:17:34 +01:00
Bartłomiej Dach
6c169e3156
Do not reprocess ranks for custom rulesets
Chances are that because we've broken rank API, it would utterly fail
for all custom rulesets anyhow.
2024-01-23 12:59:36 +01:00
Bartłomiej Dach
cb87d6ce50
Move transferal of LegacyTotalScore back to original spot
This subtle detail was messing with server-side score import flows.
Server-side, legacy total score will *already* be in `LegacyTotalScore`
from the start, and `TotalScore` will be zero until recomputed via
`StandardisedScoreMigrationTools.UpdateFromLegacy()` - so in that
context, attempting to move it across is incorrect.
2024-01-23 12:42:57 +01:00
Dean Herbert
0cf90677e6
Apply more correct visual offset adjustment
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-01-23 19:16:55 +09:00
Dean Herbert
c8cd7ebe6c
Fix now playing beatmap backgrounds not being correctly centred
https://github.com/ppy/osu/discussions/26679
2024-01-23 17:30:00 +09:00
Andrei Zavatski
da992ccc55 Implement per-axis triangles clamping 2024-01-23 04:54:27 +03:00
Bartłomiej Dach
4d253ebf3c
Remove redundant assertion
It does look pretty dumb to be checking if something is `null` *after
calling an instance method on it*...
2024-01-22 22:01:03 +01:00
Bartłomiej Dach
fdd499a485
Fix rank background processing not working (and not bumping score version) 2024-01-22 21:34:28 +01:00
Dean Herbert
02bb506cce
Avoid using .Children for enumeration in other locations 2024-01-23 05:32:11 +09:00
Dean Herbert
069af13aaf
Reduce enumerator overhead in GameplayLeaderboard 2024-01-23 05:31:53 +09:00
Bartłomiej Dach
24be6d92ce
Expand xmldoc 2024-01-22 21:13:59 +01:00
Bartłomiej Dach
cdd6e71d01
Remove legacy computation of accuracy & ranks 2024-01-22 20:52:54 +01:00
Bartłomiej Dach
217cbf684b
Remove superfluous recomputation of accuracy 2024-01-22 20:52:54 +01:00
Bartłomiej Dach
db4849442e
Unify legacy total score / accuracy / rank recomputation flows 2024-01-22 20:52:51 +01:00
Bartłomiej Dach
2958631c5d
Use lazer accuracy & rank implementations across the board 2024-01-22 20:30:16 +01:00
Bartłomiej Dach
aa8eee0796
Move maximum statistics population to LegacyScoreDecoder 2024-01-22 20:01:24 +01:00
Bartłomiej Dach
45dc9de1e0
Remove remnant of old implementation of showing "A due to misses" 2024-01-22 19:58:11 +01:00
Bartłomiej Dach
cb8ec48717
Make RankFromScore()'s dictionary param readonly
Just to make sure nobody tries any "funny" business.
2024-01-22 19:56:30 +01:00
Bartłomiej Dach
5bae9074aa
Merge branch 'master' into s-rank-change 2024-01-22 19:54:53 +01:00
Bartłomiej Dach
4cd1573a4c
Merge pull request #26612 from peppy/fix-back-sample-playback
Fix back sound being too loud when exiting many screens
2024-01-22 16:18:32 +01:00
Bartłomiej Dach
3cf83e7106
Merge pull request #26667 from peppy/fix-star-fountains
Fix star fountains sometimes resetting visually
2024-01-22 16:13:55 +01:00
Bartłomiej Dach
43fa89ebcd
Merge branch 'master' into fix-back-sample-playback 2024-01-22 15:36:32 +01:00
Bartłomiej Dach
9aa7c7f591
Revert incorrect removal of exitConfirmed flag
Removing it meant that it was _literally impossible_ to exit
multiplayer.
2024-01-22 15:35:03 +01:00
Bartłomiej Dach
b85a861175
Merge pull request #26668 from peppy/adjust-tick-end-misses
Adjust slider tick / end miss animations to be less busy
2024-01-22 15:03:33 +01:00
Bartłomiej Dach
49c117793c
Merge pull request #26609 from peppy/fix-per-ruleset-hud-positioning
Fix gameplay elements not correctly offsetting to avoid per-ruleset skin layout
2024-01-22 15:00:03 +01:00
smallketchup82
2305a53a02 Remove max combo reading & remove unnecessary commas 2024-01-22 08:59:37 -05:00
Bartłomiej Dach
95435ecd13
Merge pull request #26591 from peppy/offset-awareness
Show offset explanation tooltip on settings offset adjust slider bar
2024-01-22 14:59:31 +01:00
Bartłomiej Dach
17d05b0fdf
Fix non-miss drawable judgements fading out instantly on triangles skin
`else if` proves to be insidious once again.
2024-01-22 14:23:46 +01:00
Bartłomiej Dach
b8dd78eec8
Merge branch 'master' into fix-per-ruleset-hud-positioning 2024-01-22 13:55:56 +01:00
Dean Herbert
15df6b1da1
Revert keyboard seek speed change 2024-01-22 21:47:38 +09:00
Bartłomiej Dach
99d3fcc326
Fix crash if ruleset components container is not present 2024-01-22 13:45:55 +01:00
Dean Herbert
83f9118b22
Adjust results screen to handle S->A rank adjustment when misses are present 2024-01-22 21:43:32 +09:00
Dean Herbert
644e7d6fe6
Add migration 2024-01-22 21:43:32 +09:00
Dean Herbert
4eba3b5d70
Move BackgroundDataStoreProcessor to better namespace 2024-01-22 21:43:32 +09:00
Dean Herbert
c8521b49cd
Change S rank to require no miss 2024-01-22 21:43:32 +09:00
Bartłomiej Dach
7f31070b87
Merge pull request #26648 from peppy/fix-followpoint-pooling
Fix `FollowPointConnection` pool filling up when follow points are hidden
2024-01-22 13:31:43 +01:00
Bartłomiej Dach
0d6c681275
Merge pull request #26649 from peppy/fix-more-allocations
Remove `FillFlow` overhead of argon counters
2024-01-22 12:57:16 +01:00
Bartłomiej Dach
c8053a8077
Merge pull request #26600 from peppy/frame-stable-catchup-zoom
Change frame stable catch-up method to allow for much faster sync
2024-01-22 11:29:15 +01:00
Bartłomiej Dach
b7f0102461
Merge pull request #26662 from peppy/fix-player-crash
Fix potential null reference in player screen transition handling
2024-01-22 11:07:16 +01:00
Dean Herbert
47e9846315
Adjust slider tick / end miss animations to be less busy 2024-01-22 18:48:48 +09:00
Bartłomiej Dach
77ef12ebb0
Merge branch 'master' into frame-stable-catchup-zoom 2024-01-22 10:37:06 +01:00
Bartłomiej Dach
daa9279a23
Merge pull request #26607 from peppy/replay-seek-single-frame
Add ability to step forward/backwards single frames when watching replays
2024-01-22 10:36:13 +01:00
Dean Herbert
319af2d0c6
Merge branch 'master' into fix-storyboard-sprites-3 2024-01-22 18:03:24 +09:00
Dean Herbert
cd551b1abd
Fix star fountains sometimes resetting visually
Addresses https://github.com/ppy/osu/discussions/26622.
2024-01-22 18:01:21 +09:00
Dean Herbert
993e733fce
Merge pull request #26598 from frenzibyte/fix-storyboard-sprites-2
Remove handling for non-legacy texture lookup paths in `LegacySkin`
2024-01-22 17:50:55 +09:00
Bartłomiej Dach
1ac682e2c9
Merge branch 'master' into replay-seek-single-frame 2024-01-22 09:36:15 +01:00
Bartłomiej Dach
af5e6700af
Merge pull request #26606 from peppy/frame-stable-update-while-paused
Allow seeking while paused
2024-01-22 09:35:52 +01:00
Dean Herbert
3dd18c777a
Remove a couple more overrides 2024-01-22 17:00:35 +09:00
Dean Herbert
f6fa965252
Merge pull request #26661 from frenzibyte/fix-mouse-blueprint
Fix blueprint container not handling right clicks correctly while moving a blueprint
2024-01-22 16:53:54 +09:00
Bartłomiej Dach
cd9cb7d6c8
Merge branch 'master' into frame-stable-update-while-paused 2024-01-22 08:52:15 +01:00
Bartłomiej Dach
493d495992
Merge pull request #26605 from peppy/simplify-gameplay-pause
Simplify gameplay pause sequence
2024-01-22 08:49:08 +01:00
Dean Herbert
62965549e7
Merge pull request #26660 from EVAST9919/carousel-alloc
Reduce allocation overhead in `BeatmapCarousel`
2024-01-22 16:47:28 +09:00
Dean Herbert
3e5fe66e58
Fix potential null reference in player screen transition handling
See https://github.com/ppy/osu/actions/runs/7607677219/job/20715418536?pr=26660.
2024-01-22 16:37:56 +09:00
Dean Herbert
1f0ad5cff2
Apply same fix in more places 2024-01-22 15:56:16 +09:00
Dean Herbert
74f05a5c4b
Use container itself rather than ScrollContent 2024-01-22 15:54:24 +09:00
Salman Ahmed
2bd9cd5d34 Fix blueprint container not handling right clicks correctly while moveing an element 2024-01-22 04:39:08 +03:00
Andrei Zavatski
cec4f670d1 Reduce allocation overhead in BeatmapCarousel 2024-01-22 03:12:23 +03:00
Dean Herbert
3b7a47aded
Merge branch 'master' into update-framework 2024-01-21 13:49:44 +09:00
Dean Herbert
02369139b3
Remove FillFlow overhead of argon counters 2024-01-21 13:22:58 +09:00
Andrei Zavatski
1393f52b2b Rename Masking to ClampToDrawable 2024-01-21 05:20:42 +03:00
Dean Herbert
a69fd8198d
Update framework and other nuget packages
- Moq held back because dicks
- NUnit held back because large API changes (trivial but effort)
- SignalR held back due to api deprecations
2024-01-21 11:00:53 +09:00
Andrei Zavatski
e003ecb593 Change default masking value to true 2024-01-21 04:57:48 +03:00
Dean Herbert
2dedead1d1
Allow debug instances to coexist alongside release instances 2024-01-21 10:56:55 +09:00
Dean Herbert
1999e772f6
Fix FollowPointConnection pool filling up when follow points are hidden
Closes https://github.com/ppy/osu/issues/26642.

I think this applied to all pooling cases here.
2024-01-21 10:31:27 +09:00
Andrei Zavatski
6ba3546be5 Enable masking in RoundedButton 2024-01-21 02:28:14 +03:00
Andrei Zavatski
60f7b4ea2f Enable masking in DrawableRank 2024-01-21 02:25:29 +03:00
Andrei Zavatski
421ae73715 Enable masking in DrawableCarouselBeatmap 2024-01-21 02:21:09 +03:00
Andrei Zavatski
087d0f03a4 Enable masking in toolbar 2024-01-21 02:15:48 +03:00
Andrei Zavatski
a3703d657a Enable masking in popup dialog 2024-01-21 02:12:49 +03:00
Andrei Zavatski
3ad3b052df Enable masking is osu logo 2024-01-21 02:10:36 +03:00
OliBomby
78e87d379b fix divide by zero 2024-01-20 16:53:11 +01:00
OliBomby
2f924b3368 fix skewed single axis scale 2024-01-20 16:33:03 +01:00
OliBomby
5f40d3aed9 rename variable 2024-01-20 16:29:26 +01:00
OliBomby
a155b315bf Fix negative width or height skin drawables 2024-01-20 16:10:17 +01:00
OliBomby
ac76af5cc8 fix skin scale coordinate system 2024-01-20 15:43:47 +01:00
OliBomby
9b9485f656 fix adjust axes detection 2024-01-20 15:39:38 +01:00
OliBomby
1596776a81 fix imports 2024-01-20 15:15:49 +01:00
OliBomby
0fc448f4f3 fix adjusting scale from anchor 2024-01-20 15:12:48 +01:00
OliBomby
6a4129dad8 fix aspect ratio transform 2024-01-20 15:11:35 +01:00
OliBomby
fcaa5ec20e remove debug logs 2024-01-20 13:26:08 +01:00
OliBomby
6a57be0a50 clean up code and fix flipping 2024-01-20 13:04:05 +01:00
Andrei Zavatski
45effdb6df Remove local vertex batching from triangles backgrounds 2024-01-20 08:41:34 +03:00
OliBomby
ed430a3df4 refactor skin editor scale 2024-01-20 02:49:56 +01:00
OliBomby
a4f771ec08 refactor CanScale properties 2024-01-20 01:13:01 +01:00
OliBomby
26c0d1077a Refactor scale handling in editor to facilitate reuse 2024-01-20 00:22:53 +01:00
Joseph Madamba
3eeefd5b7e Fix changelog stream user count only accounting for latest build 2024-01-18 16:15:52 -08:00
Dean Herbert
0383bdf6a1
Add bindings for stepping backward/forward 2024-01-18 20:38:25 +09:00
Dean Herbert
c50534c819
Move seek/step logic into ReplayPlayer 2024-01-18 20:38:15 +09:00
Salman Ahmed
b97c3ac9ee Fix revert-to-default button appearing on disabled settings regardless of value 2024-01-18 14:24:49 +03:00
Dean Herbert
8c4af58109
Keep replay controls expanded by default 2024-01-18 20:13:32 +09:00
Dean Herbert
60e972cd15
Add ability to step forward/backwards single frames 2024-01-18 20:13:32 +09:00
Dean Herbert
dafff26d0e
Tidy up implementation of PlaybackSettings 2024-01-18 20:13:32 +09:00
Dean Herbert
e73910571f
Allow FrameStabilityContainer to continue updating while paused during replay playback 2024-01-18 20:13:28 +09:00
Dean Herbert
2afa4c7e1c
Remove redundant RequiresChildrenUpdate usage
We are already manually calling `base.UpdateSubTree` when we need to.
Changing this flag is doing nothing and just adds to the complexity of
the implementation.
2024-01-18 20:13:28 +09:00
Andrei Zavatski
4532a409d2
Fix ConstrainedIconContainer always using masking 2024-01-18 20:13:27 +09:00
Dean Herbert
c4e9bcd140
Remove test guarantee of audio time not advancing 2024-01-18 20:06:53 +09:00
Dean Herbert
82e7643df5
Update IPC usages
Of note, I've disabled IPC on visual test runners as we generally don't
use IPC in these cases. Having it set means that the game will not open
while visual tests are open, which has been a complaint from devs in the
past.
2024-01-18 19:45:36 +09:00
Bartłomiej Dach
2be989b9f5
Merge pull request #26542 from peppy/non-touch-fade-button
Fade hold-for-menu button out completely on non-touch devices
2024-01-18 11:27:50 +01:00
Dean Herbert
c9945b41c1
Remove rounding of slider velocity (when applied as scroll speed)
This affects both osu!taiko and osu!mania.

Closes https://github.com/ppy/osu/issues/25862.
2024-01-18 18:37:44 +09:00
smallketchup82
5c70c786b4 Fix extended tooltip content still being shown despite ShowExtendedTooltip being false 2024-01-18 03:18:44 -05:00
Dean Herbert
fd9c7184e4
Only play back sample once when traversing up multiple screens in stack 2024-01-18 16:31:33 +09:00
Dean Herbert
ef0b5c9406
Stop playing back samples for nested screens in multiplayer
I'd argue this sounds better.
2024-01-18 16:31:20 +09:00
Dean Herbert
a756942f4d
Merge branch 'master' into fix-storyboard-sprites-2 2024-01-18 16:07:02 +09:00
Dean Herbert
ee3de9c522
Fix gameplay elements not correcly offsetting to avoid per-ruleset skin layout
Closes https://github.com/ppy/osu/issues/26601.
2024-01-18 15:44:27 +09:00
Dean Herbert
8ab8c90e33
Remove "pause rate adjust" flow 2024-01-18 14:21:02 +09:00
Dean Herbert
799c74cfe5
Simplify gameplay pause sequence 2024-01-18 14:17:19 +09:00
Dean Herbert
c362a93a36
Change frame stable catch-up method to allow for much faster sync 2024-01-18 14:01:37 +09:00
Andrei Zavatski
42e4c933d3 Fix ConstrainedIconContainer always using masking 2024-01-18 04:06:02 +03:00
smallketchup82
060ea1d4fd Switch from using a constructor argument to using a public field for ShowExtendedTooltip 2024-01-17 14:04:13 -05:00
smallketchup82
9a6541356e Refactor the extended tooltip variables to be more descriptive 2024-01-17 13:31:23 -05:00
Salman Ahmed
06da7f74de
Merge branch 'master' into fix-storyboard-sprites-2 2024-01-17 18:43:25 +03:00
Dean Herbert
e260e75fac
Merge pull request #26594 from frenzibyte/fix-storyboard-sprites-1
Change legacy beatmap skins to not handle `@2x` textures (to match stable)
2024-01-18 00:40:29 +09:00
Salman Ahmed
5597b48882 Fix storyboard animations stripping path directory on skin lookup 2024-01-17 18:39:48 +03:00
smallketchup82
b6422bc8bd Apply suggested changes
- Change difficultyicon mods parameter docstring to be more professional
- Add a parameter for controlling whether the difficulty statistics show or not. Defaults to false
- Round the BPM in the tooltip to make sure it displays correctly
2024-01-17 09:07:17 -05:00