1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 22:52:54 +08:00
Commit Graph

37208 Commits

Author SHA1 Message Date
Dean Herbert
e0d58d51b6 Split out classes into own files and rename GroupInfoContainer to a flow 2023-01-11 16:47:29 +09:00
Dean Herbert
eb398de1a6
Merge pull request #22114 from frenzibyte/fix-overlay-not-blocking-scroll
Fix game overlays not blocking scroll properly
2023-01-11 16:30:44 +09:00
Dean Herbert
5a5ea2c54a
Merge pull request #22005 from bdach/user-profile/decouple-from-api-user
Decouple user profile overlay from `APIUser` model
2023-01-11 16:27:00 +09:00
Dean Herbert
b710f86d75 Refactor to use tuples and de-duplicate request code 2023-01-11 16:15:28 +09:00
Dean Herbert
d1ca4ebd40
Merge pull request #21559 from OliBomby/stream-tool-1
Add segment end completions list to SliderPath
2023-01-11 15:31:04 +09:00
StanR
5441c02a1a Implement user group badges 2023-01-11 07:11:38 +03:00
Dan Balasescu
d9a6e4b862 Ensure drain lenience of 1.0 completly removes drain 2023-01-11 13:01:11 +09:00
Joseph Madamba
b5caa1b778 Rename pause gameplay keybind to reflect other behavior 2023-01-10 15:53:41 -08:00
Joseph Madamba
776b60f3b3 Fix manual input manager test scenes not matching game input hierarchy
Fix popover using on key down

Fix popover not expiring when using global action
2023-01-10 15:35:26 -08:00
Stedoss
44de24f153 BeatmapSetOverlay fetch on login state change 2023-01-10 23:30:09 +00:00
ansel
b38cf8c56c Use empty string as default 2023-01-11 02:26:25 +03:00
tsrk
21073f3601
reafactor: use DrawNode to draw SegmenteddGraph 2023-01-10 22:49:35 +01:00
Bartłomiej Dach
62e12277d8
Rename things yet again 2023-01-10 19:30:01 +01:00
Bartłomiej Dach
502478614a
Merge branch 'master' into user-profile/decouple-from-api-user 2023-01-10 19:13:33 +01:00
Salman Ahmed
11648db910 Fix game overlays not blocking scroll properly 2023-01-10 21:01:06 +03:00
Bartłomiej Dach
1eaabb5ca8
Merge branch 'master' into carousel_nullability_disabling_removal 2023-01-10 18:39:42 +01:00
Bartłomiej Dach
aab84d50eb
Remove boxing overhead in CarouselItem comparator 2023-01-10 18:35:06 +01:00
Dean Herbert
23a78e6fad Combine commit button enabled handling 2023-01-10 23:59:17 +09:00
Dean Herbert
cde45cdd3e
Merge pull request #21739 from integerrr/score-export-date
Append date to score export filename
2023-01-10 23:33:38 +09:00
Dean Herbert
af458f6f66
Merge pull request #22105 from frenzibyte/improve-score-import-logging
Improve missing beatmap failure logging on score import
2023-01-10 22:28:38 +09:00
Dean Herbert
a22b7298c6
Adjust english slightly 2023-01-10 22:27:36 +09:00
Salman Ahmed
0d6b9ebc0f Display number of failing models during batch-import 2023-01-10 13:32:10 +03:00
Salman Ahmed
c6b6d0dcfe Remove verbose log from notifications feed 2023-01-10 13:31:29 +03:00
Dean Herbert
3210586eb6
Merge pull request #21519 from mk56-spn/variable_BPM_counter
Add dynamic BPM counter to SkinEditor
2023-01-10 18:43:50 +09:00
Dean Herbert
60eeb4607c
Merge pull request #19528 from Joehuu/fix-op-non-current-onexiting
Fix online play screen only accounting for current sub screen onexiting blocks
2023-01-10 18:43:19 +09:00
Dean Herbert
74bd1a1dd0
Merge pull request #22104 from frenzibyte/move-stable-import-to-debug
Move stable import buttons under debug section in favour of first-run "import" screen
2023-01-10 18:27:31 +09:00
Dean Herbert
37d219a8ad Fix comments, remove fixed width on "bpm" text and adjust baseline adjust slightly 2023-01-10 18:20:39 +09:00
Dean Herbert
85f542c3a8 Make GameplayClock private 2023-01-10 18:15:10 +09:00
Dean Herbert
7177225f9e
Merge pull request #22103 from mk56-spn/bar_visibility_toggle_clean
Add the ability to toggle the main bar component of `BarHitErrorMeter`
2023-01-10 18:07:47 +09:00
Dean Herbert
3c93d0551c Move setting up to be in line with other toggle 2023-01-10 18:07:15 +09:00
Dean Herbert
63ce5787e7 Start bars invisible 2023-01-10 18:06:45 +09:00
Dean Herbert
b7e845201f Fix whitespace around Debug.Assert 2023-01-10 18:03:17 +09:00
Dean Herbert
d53dafa29f Revert Debug.Assert 2023-01-10 17:52:28 +09:00
Dean Herbert
93038ce496 Use OfType instead of forceful nullability 2023-01-10 17:52:21 +09:00
integer
f971405c8c append time as well 2023-01-10 00:02:31 +00:00
tsrk
91cde5ffbf
feat(hud/gameplay): implement Argon variant of SongProgress 2023-01-09 21:59:48 +01:00
tsrk
5952cd08a2
feat(hud/gameplay): implement Argon song progress density graph (SegmentedGraph) 2023-01-09 21:58:53 +01:00
tsrk
28d2d766eb
refactor(hud/gameplay/SongProgressInfo): minor changes to text positioning, font and colour 2023-01-09 21:57:32 +01:00
tsrk
f6265197e8
feat(hud/gameplay): Add Argon variant of SongProgressBar 2023-01-09 21:56:29 +01:00
tsrk
0f1fe1d683
refactor(hud/gameplay/SongProgress): Add interface to designate SongProgressBars 2023-01-09 21:48:53 +01:00
Salman Ahmed
e6479b73de Remove one more unused using directive 2023-01-09 23:43:35 +03:00
ansel
23e4cfb469 Show spinner next to buttons and get rid of EditorCommitButton 2023-01-09 23:37:36 +03:00
tsrk
91eab7985b
feat(ui): Implement a segmented graph 2023-01-09 21:35:27 +01:00
Salman Ahmed
20ed337ea8 Remove unused using directive 2023-01-09 23:25:52 +03:00
Salman Ahmed
f216d7264b Improve missing beatmap failure logging on score import 2023-01-09 23:06:59 +03:00
mk56-spn
602062f011 Address unclear naming issue 2023-01-09 21:04:51 +01:00
mk56-spn
6abbc7dc28 Further fix nullability 2023-01-09 20:59:28 +01:00
Bartłomiej Dach
98d78b2345
Merge branch 'master' into fix-channel-init-request-pile-up 2023-01-09 20:32:21 +01:00
Bartłomiej Dach
ce8a8b5433
Merge branch 'master' into screenshot-safety 2023-01-09 19:56:06 +01:00
Salman Ahmed
3014b60fd5
Merge branch 'master' into fix-channel-init-request-pile-up 2023-01-09 21:39:52 +03:00
Salman Ahmed
98390ea2a8 Fix condition flipped 2023-01-09 21:33:08 +03:00
Salman Ahmed
dbc19777e0 Move stable import buttons under "debug" section 2023-01-09 21:22:21 +03:00
mk56-spn
d6f60db234 Add the ability to toggle the visibility of the main bar in BarHitErrorMeter.cs 2023-01-09 18:51:51 +01:00
mk56-spn
69260ca3c3 remove unnecessary usages of nullable forgiveness, add asserts for debugging 2023-01-09 18:36:55 +01:00
Bartłomiej Dach
6027e7cc4e
Fix one more missed related symbol 2023-01-09 18:22:49 +01:00
Salman Ahmed
5ee0665eac
Merge branch 'master' into pause-imports-during-gameplay 2023-01-09 20:09:17 +03:00
Salman Ahmed
8a05223591 Check cancellation token if importer was resumed while sleeping 2023-01-09 20:07:46 +03:00
Salman Ahmed
a1fbfe4b8b Specifiy importer name during pause/resume in logs 2023-01-09 19:53:41 +03:00
Bartłomiej Dach
0026861bd4
Merge branch 'master' into user-profile/decouple-from-api-user 2023-01-09 17:47:59 +01:00
Bartłomiej Dach
4dec3cae57
Rename UserProfileData-related symbols 2023-01-09 17:46:08 +01:00
Bartłomiej Dach
fdf0d4bd62
Rename UserProfile{ -> Data} 2023-01-09 17:37:28 +01:00
Dean Herbert
e35f63c001 Ensure screenshot filenames are unique by locking over file creation 2023-01-10 01:37:16 +09:00
Dean Herbert
811a562608 Don't use bindables to avoid potential cross-usage contamination 2023-01-10 01:10:20 +09:00
Endrik Tombak
44e9fb638c Merge branch 'master' of https://github.com/ppy/osu into songs-folder-check 2023-01-09 14:53:40 +02:00
Endrik Tombak
f5c8ba420c Revert message change 2023-01-09 14:53:16 +02:00
Dean Herbert
9d97c1a0bd
Merge branch 'master' into variable_BPM_counter 2023-01-09 19:26:34 +09:00
Dean Herbert
54b2fe9df3
Merge branch 'master' into fix-op-non-current-onexiting 2023-01-09 19:12:42 +09:00
Dean Herbert
07dae7dc21 Merge branch 'master' into overlay-panels-context-menu 2023-01-09 19:04:56 +09:00
Dean Herbert
62ffb4fe78 Pause imports during active gameplay 2023-01-09 18:54:11 +09:00
Endrik Tombak
15eebd1f50 Only show message about Songs folder 2023-01-09 11:47:13 +02:00
Dean Herbert
22d0b34623 Remove flag causing intiialisation to only run once ever 2023-01-09 16:38:37 +09:00
Dean Herbert
13c3d2c254 Fix retry loop for channel initialisation resulting in request pile-up
Closes #22060.
2023-01-09 16:15:31 +09:00
Dean Herbert
13b00928c8 Rename loading spinner bool to reflect that it has a setter 2023-01-09 15:52:18 +09:00
Dean Herbert
d2f4ffcc5b Merge branch 'master' into comment-editor-1 2023-01-09 15:52:17 +09:00
Joseph Madamba
c2dd822e4a Make pause overlay close with pause gameplay action 2023-01-08 14:12:09 -08:00
Joseph Madamba
f6b1dfc7b0 Fix channel listing items overflowing at high ui scaling 2023-01-08 13:27:10 -08:00
Bartłomiej Dach
2803c98612
Merge pull request #22047 from Feodor0090/wcd-length-fix
Fix `WaveformComparisonDisplay` does not take into account start time of control points
2023-01-08 20:36:35 +01:00
Salman Ahmed
f2609820c1
Merge branch 'master' into fix-player-loader-logo-drag 2023-01-08 21:48:07 +03:00
Bartłomiej Dach
e08b7c615b
Merge branch 'master' into wcd-length-fix 2023-01-08 19:44:12 +01:00
Salman Ahmed
7dd0f892c8
Merge branch 'master' into fix-player-loader-logo-drag 2023-01-08 21:29:03 +03:00
mk56-spn
47fb467012 Remove nullable disabling in carousel 2023-01-08 19:02:48 +01:00
Bartłomiej Dach
9fd305a970
Merge branch 'master' into editor-bg-refresh 2023-01-08 18:57:04 +01:00
Bartłomiej Dach
9b68932eb4
Merge branch 'master' into beatmap-info-nominators 2023-01-08 14:35:07 +01:00
Dean Herbert
750b55d9b7 Update other events to have matching return types (and animate more) 2023-01-08 22:28:19 +09:00
Joseph Madamba
bae3a6851b Block hover events behind logo even if action is null 2023-01-07 11:15:51 -08:00
Joseph Madamba
9d32fde592 Mark current nominations and related users as nullable 2023-01-07 11:04:42 -08:00
Joseph Madamba
0f6735564e Move and rename nomination response model to singular 2023-01-07 10:54:48 -08:00
ansel
aaeb43fbb2 Return older file if new one is null 2023-01-07 18:15:57 +03:00
Salman Ahmed
cfdb0e1806
Merge branch 'master' into previewTime 2023-01-07 16:25:53 +03:00
Dean Herbert
9549aefc33
Merge pull request #22056 from frenzibyte/fix-friends-duplication
Fix friends list duplicating after connection failure
2023-01-07 21:00:39 +08:00
Salman Ahmed
a65466bdac
Merge branch 'master' into previewTime 2023-01-07 15:07:09 +03:00
Salman Ahmed
abca13eb6c Rewrite visualisation piece to bind once and without potential event leak 2023-01-07 14:40:15 +03:00
Salman Ahmed
904c76e437 Use sane BeatmapInfo for preview time mutation
`EditorBeatmap.BeatmapInfo` is usually the correct instance for mutating
properties that should persist in the database.
2023-01-07 14:23:36 +03:00
ansel
927773d565 Display submitted comments locally 2023-01-07 04:15:43 +03:00
ansel
b47cef838c Nullability 2023-01-07 03:08:02 +03:00
ansel
167ac8b5dd Fix editor object being requered 2023-01-07 03:03:52 +03:00
ansel
58bf7349ee Fix request 2023-01-07 02:59:32 +03:00
ansel
32e90829e3 Integrate comment editor into container 2023-01-07 02:59:24 +03:00
ansel
768a33bb64 Add request class 2023-01-06 23:31:19 +03:00
ansel
387326db0d Make commit action abstract 2023-01-06 22:51:57 +03:00
Salman Ahmed
e449d8dda0 Fix friends list duplicating on connection failure 2023-01-06 22:39:46 +03:00
Joseph Madamba
7f970f3cd8 Display nominators on beatmap set overlay 2023-01-06 11:33:39 -08:00
Joseph Madamba
53d7dcefe5 Fix osu! logo not being draggable on player loader 2023-01-06 09:30:25 -08:00
ansel
9364c7775d Refresh background on file change in editor 2023-01-06 19:26:30 +03:00
ansel
e90c698e62 Fix WCD does not take into account start time of control points 2023-01-06 16:35:39 +03:00
Salman Ahmed
3862184f9c
Merge branch 'master' into improve-filter-tab-item-ux 2023-01-06 15:37:21 +03:00
Dean Herbert
99f2bbe775
Merge pull request #22044 from peppy/filter-tab-item-bold
Make selected tab items more bold (and add underline)
2023-01-06 20:35:29 +08:00
Salman Ahmed
0ade4d92d1 Fix multiple highlighting issues with beatmap listing tab items 2023-01-06 15:13:31 +03:00
Dean Herbert
f908b25dab
Merge pull request #22033 from frenzibyte/decrease-difficulty-list-fadeout
Decrease transition duration of extended difficulty list during hide
2023-01-06 20:13:30 +08:00
Salman Ahmed
3d053ac758
Merge branch 'master' into filter-tab-item-bold 2023-01-06 15:11:57 +03:00
Dean Herbert
0ab1418aa6
Merge pull request #22034 from frenzibyte/fix-toolbox-group-animation
Fix settings toolbox group not animating on expansion
2023-01-06 19:59:31 +08:00
Salman Ahmed
f29f9c17bd
Merge branch 'master' into filter-tab-item-bold 2023-01-06 14:59:11 +03:00
Dean Herbert
c0cfa66510
Merge pull request #21754 from Feodor0090/waveform-invalidate
Reload waveform on track replacement in editor
2023-01-06 19:57:27 +08:00
Dean Herbert
4319937bc7 Also add an underline to better accent current filters 2023-01-06 20:36:10 +09:00
Dean Herbert
3c74d27deb Also add an underline to better accent current filters 2023-01-06 20:35:58 +09:00
Dean Herbert
458fe382ed Make selected tab items more bold 2023-01-06 20:06:41 +09:00
Dean Herbert
938658649e
Merge pull request #22043 from frenzibyte/fix-solo-leaderboard-hyphen
Fix gameplay leaderboard showing "-" on non-tracked scores
2023-01-06 18:12:00 +08:00
Dean Herbert
464f251c0c
Merge branch 'master' into beatmap-set-link-genre-language 2023-01-06 17:09:06 +08:00
Salman Ahmed
408356d05e Fix gameplay leaderboard showing "-" on non-tracked scores 2023-01-06 12:06:47 +03:00
ansel
c6e2104ec2 Refresh waveforms instead of recreating the whole component 2023-01-06 03:46:49 +03:00
Salman Ahmed
88148567c0
Merge branch 'master' into fix-playlist-item-regressions 2023-01-05 15:31:27 +03:00
Salman Ahmed
7d8aff8f7e Fix settings toolbox group not animating on expansion 2023-01-05 14:35:57 +03:00
Salman Ahmed
8da7667b0b Decrease transition duration of extended difficulty list during hide 2023-01-05 14:22:17 +03:00
Salman Ahmed
8f37e69dc4 Schedule difficulty calculation to avoid performing with incomplete state updates 2023-01-05 12:52:08 +03:00
Salman Ahmed
39221a52da Fix advanced statistics display using decoupled ruleset bindable for difficulty calculation 2023-01-05 12:52:08 +03:00
Joseph Madamba
5fb6f220e6 Fix playlist items not animating when rearranging 2023-01-03 11:10:02 -08:00
Joseph Madamba
5dfd4180c8 Fix playlist selecting random item when not allowed after deleting 2023-01-03 11:10:02 -08:00
Bartłomiej Dach
4ead7ea33f
Merge branch 'master' into fix-leaderboard-fetch-wrong 2023-01-03 20:01:30 +01:00
Bartłomiej Dach
3d425c93e6
Merge branch 'master' into fix-combo-colour-export 2023-01-03 19:21:24 +01:00
Dean Herbert
beb3b96aca Harden request equality checks 2023-01-04 01:44:00 +08:00
Dean Herbert
96e81e7f41 Switch on NRT and add IEquatable to GetScoresRequest 2023-01-04 01:41:21 +08:00
Salman Ahmed
4491a5ba9f Fix editor exporting beatmap combo colours in wrong order 2023-01-03 13:41:08 +03:00
Dean Herbert
ac85433178 Fix default volume control keys not working when chat textbox is focused
Closes #22004.
2023-01-03 09:44:35 +08:00
Dean Herbert
8f7ae0395a Fix song select leaderboard potentially showing wrong scores on quick beatmap changes
Closes #22002.
2023-01-03 00:55:09 +08:00
Bartłomiej Dach
a124c967df
Add proper offline & loading state handling to user profile overlay 2023-01-02 17:23:09 +01:00
Bartłomiej Dach
c759b743dc
Add support for switching rulesets on profile overlay 2023-01-02 17:23:06 +01:00
Bartłomiej Dach
a2e726502f
Add ruleset selector to profile overlay 2023-01-02 17:23:04 +01:00
Bartłomiej Dach
7683ab68b0
Use UserProfile in profile ruleset selector 2023-01-02 17:23:01 +01:00
Bartłomiej Dach
1722f3a125
Add ruleset to UserProfile 2023-01-02 17:22:55 +01:00
Bartłomiej Dach
4dd7727f71
Remove test-specific workaround in overlay 2023-01-02 17:21:14 +01:00
Bartłomiej Dach
d7294ac3e6
Substitute APIUser for UserProfile in overlay 2023-01-02 17:21:09 +01:00
Bartłomiej Dach
608d8ee7d4
Add UserProfile model to be used in user profile overlay
As `APIUser` implements `IEquatable`, attempting to replace an `APIUser`
with another `APIUser` with the same online ID has no effect on the user
profile overlay. This is a significant hurdle in implementing support
for viewing the profile for different rulesets, as in that case the
profile is basically reloaded for the same user, but slightly different
data.

To facilitate this, wrap `APIUser` in a new `UserProfile` class. This
will mean that the equality rules can be changed locally to the user
profile overlay without impacting other components that depend on the
`APIUser` equality rules. The ruleset that the user profile is being
displayed with will eventually be added to `UserProfile`, too.
2023-01-02 17:21:00 +01:00
Bartłomiej Dach
88e90d5fa0
Enable NRT in user profile overlay 2023-01-01 23:49:11 +01:00
Bartłomiej Dach
b689ad6d80
Fix changing preview point not prompting for save 2023-01-01 19:54:26 +01:00
Bartłomiej Dach
efdd557f3b
Adjust binding logic 2023-01-01 19:45:23 +01:00
Bartłomiej Dach
452ebddfd2
Adjust visual appearance of preview time part
- Use slightly different hue of green to distinguish from difficulty
  control points. The colour is still not ideal, but picking
  a distinctive enough hue is pretty hard.

- Place the preview time part at the bottom rather at the top.
  Not sure why it was at the top; not only could it overlap with the
  control points, but it also looked quite badly misaligned there
  when bookmarks were displayed at the bottom.
2023-01-01 19:42:55 +01:00
Bartłomiej Dach
a82f1a6abd
Adjust method naming and copy 2023-01-01 18:50:47 +01:00
Bartłomiej Dach
0e59b55a12
Merge branch 'master' into previewTime 2023-01-01 18:38:19 +01:00
Bartłomiej Dach
2698d58c46
Merge branch 'master' into remember-chat-textbox-per-channel 2023-01-01 17:29:38 +01:00
Dean Herbert
7e39ee3982
Merge pull request #21945 from cdwcgt/acc-UI
Add new display modes for accuracy counter
2023-01-01 23:20:12 +08:00
Dean Herbert
9a4f0cad2c Fix incorrect domain root being used for recent activity entries on profile overlay
Closes https://github.com/ppy/osu/issues/21980.
2023-01-01 17:48:05 +08:00
Dean Herbert
87250ad847 Add search keywords for beatmap colours / hitsound overrides 2023-01-01 14:32:28 +08:00
Bartłomiej Dach
6509d3538c
Fix counter initially rolling down from 100% to 0% in minimum achievable mode 2022-12-30 21:13:41 +01:00
Bartłomiej Dach
7580ab78be
Move binding to LoadComplete() 2022-12-30 21:08:48 +01:00
Bartłomiej Dach
6ed474d4fb
Rearrange formula for maximum accuracy
Feels like it's easier to understand this way. The difference of the
maximum scoring values for the entire beatmap and the max values for the
part of the beatmap that has already been played represents the act of
filling the rest of the unjudged objects with maximum results.
2022-12-30 20:56:54 +01:00
Bartłomiej Dach
8ace635249
Adjust minimum values 2022-12-30 20:55:51 +01:00
Bartłomiej Dach
bb2822a175
xmldoc pass 2022-12-30 20:55:48 +01:00
Bartłomiej Dach
6d42cc5a36
Naming pass 2022-12-30 20:30:58 +01:00
cdwcgt
d60349c7c6
add description 2022-12-30 23:24:41 +09:00
cdwcgt
8beb168be9
remove nullable disabled 2022-12-30 23:24:20 +09:00
cdwcgt
784fe7ecf2
rename AccType to AccuracyDisplay 2022-12-30 23:06:10 +09:00
cdwcgt
23c485c763
readonly 2022-12-30 22:59:56 +09:00
cdwcgt
a91da2284d
safe way to pass bindable 2022-12-30 22:58:46 +09:00
cdwcgt
3c32a50c12
add new accuracy counter display 2022-12-30 21:19:46 +09:00
Bartłomiej Dach
0d70f2c0fd
Use alternative workaround 2022-12-30 09:08:17 +01:00
Bartłomiej Dach
f625c5d744
Fix gradient showing when toggling toolbar with mouse above window 2022-12-29 23:35:45 +01:00
Bartłomiej Dach
bf975eb48a
Fix toolbar gradient not showing when mouse is hovered over buttons 2022-12-29 23:03:53 +01:00
Dean Herbert
ccf713c885 Fix incorrect hard link validity check in stable import screen 2022-12-29 23:18:12 +08:00
Dean Herbert
0fcf10e10a Also support hard links on macOS 2022-12-29 22:35:13 +08:00
Dean Herbert
f9f6918fc3
Merge branch 'master' into add_linux_hardlink 2022-12-29 21:29:57 +08:00
Bartłomiej Dach
c5f7da9a4e
Fix hover propagating through toolbar buttons
Closes #21920.

Weirdly enough this was semeingly fixed once before in ancient times in
3891f467a3, but then unfixed again in
566e09083f. The second change is no longer
needed since the toolbar became opaque in #9447.
2022-12-29 13:19:14 +01:00
Joseph Madamba
70dbb8edac Fix stand alone chat display textbox not binding to local channel 2022-12-29 01:37:37 -08:00
Joseph Madamba
c326745f96 Save / sync chat text box messages per channel 2022-12-28 16:09:40 -08:00
Joseph Madamba
b40d114e76 Remove context menu from news card for now 2022-12-28 15:00:57 -08:00
Bartłomiej Dach
74bc5d4666
Disable naming rule inspection on struct stat definition 2022-12-28 22:38:42 +01:00
Bartłomiej Dach
10c11e974d
Fix broken spacing 2022-12-28 22:24:21 +01:00
Bartłomiej Dach
49b0ec9ddb
Fix broken condition 2022-12-28 22:24:18 +01:00
Bartłomiej Dach
8d79fa93ac
Implement GetFileLinkCount() for Linux 2022-12-28 22:14:56 +01:00
Bartłomiej Dach
d4b3965967
Change warning message about file duplication
- It was being glued in an ugly way that would have prevented sanely
  localising it.

- Even on Linux, the filesystem (whichever one the user has chosen out
  of the multitude available) still needs to support hard links for them
  to have a chance of working.
2022-12-28 22:04:08 +01:00
Bartłomiej Dach
04d4b4a6ce
Rename and xmldoc hard link creation method 2022-12-28 22:04:05 +01:00
Bartłomiej Dach
cadd487c75
Use switch statement in AttemptHardLink() 2022-12-28 21:20:49 +01:00
Bartłomiej Dach
2c346eae0d
Revert inlining of hard link creation into condition
Just feels bad. Mixing data access with actual underlying logic.
2022-12-28 21:19:28 +01:00
BlauFx
d63be3ff17 Change name of variable 2022-12-28 15:02:44 +01:00
BlauFx
c6da7248ba Remove unnecessary directive 2022-12-28 14:40:32 +01:00
BlauFx
53bca947d1 Move duplicated code into its own method 2022-12-28 14:34:27 +01:00
BlauFx
f32564652b Mention the filesystem should be NTFS on Windows 2022-12-28 14:33:38 +01:00
BlauFx
5c5e84f931 Fix formatiing 2022-12-28 14:06:50 +01:00
Dean Herbert
ea8beffa61
Merge pull request #21871 from bdach/solo-statistics-watcher-reliability
Improve reliability of solo statistics watcher
2022-12-28 21:05:38 +08:00
BlauFx
16165b1f67 Remove blank line 2022-12-28 13:58:52 +01:00
Feodor0090
930cd15649
Merge branch 'master' into comment-editor-1 2022-12-28 17:46:01 +05:00
Bartłomiej Dach
e4c060fc3a
Merge pull request #21854 from peppy/fix-website-root
Fix `osu.ppy.sh` links no longer opening in-game
2022-12-28 13:43:24 +01:00
BlauFx
b2aa2e1602 Add hardlink support for Linux 2022-12-28 13:32:49 +01:00
Bartłomiej Dach
4b71ccf315
Merge pull request #21879 from frenzibyte/first-object-visbility-keywords
Add keywords to ease search of "first object visibility" setting
2022-12-28 12:15:34 +01:00
Salman Ahmed
b4c5e18da0 Add keywords to ease search of "first object visibility" setting 2022-12-28 13:23:50 +03:00
Bartłomiej Dach
3c0b8af8f1
Allow unsubscribing from solo statistics updates
This is more of a safety item. To avoid potential duplicate key in
dictionary errors (and also avoid being slightly memory-leaky), allow
`SoloStatisticsWatcher` consumers to dispose of the subscriptions they
take out.
2022-12-28 08:07:48 +01:00
Bartłomiej Dach
04f9a354c3
Convert SoloResultsScreen to NRT 2022-12-28 07:54:36 +01:00
Bartłomiej Dach
a0a26b1e8c
Ignore statistics update subscriptions with invalid score ID
If score submission fails, the score will not receive a correct online
ID from web, but will still be passed on to the solo statistics watcher
on the results screen. This could lead to the watcher subscribing to
changes with score ID equal to the default of -1. If this happened more
than once, that would cause a crash due to duplicate keys in the
`callbacks` dictionary.

Closes #21837.
2022-12-28 07:54:01 +01:00
Bartłomiej Dach
e9d32fca18
Fix various failures in initial statistics fetch
- If the local user is restricted, then attempting to fetch their data
  from the `/users` endpoint would result in an empty response.

- Even if the user was successfully fetched, their `RulesetsStatistics`
  may not be populated (and instead be `null`). Curiously this was not
  picked up by static analysis until the first issue was fixed.

Closes #21839.
2022-12-28 07:31:36 +01:00
Dean Herbert
0d78bc2248 Fix osu.ppy.sh links no longer opening in-game
Addresses https://github.com/ppy/osu/discussions/21838.
2022-12-28 06:42:35 +08:00
Bartłomiej Dach
e90619244d
Fix incorrect accuracy display on overall ranking view 2022-12-27 19:51:51 +01:00
Bartłomiej Dach
ae2058b55e
Merge branch 'master' into split_trimentries 2022-12-27 18:07:36 +01:00
Salman Ahmed
1a4489edb2 Move version pinning of system packages to osu.Game 2022-12-27 14:58:18 +03:00
Dean Herbert
61029b126d Add link to hard link explanation wiki page 2022-12-27 17:56:23 +08:00
Dean Herbert
b3e44f20bc Use new lazer API endpoint
This is a temporary change to target the new experimental/next deploy.
The main change that should result from this is having the user profile
show the pp^next values from the new domain.
2022-12-27 17:20:40 +08:00
Berkan Diler
182f36c434 Use StringSplitOptions.TrimEntries for string.Split() when possible 2022-12-27 09:41:58 +01:00
Dean Herbert
df6f2ad0a1
Merge pull request #21804 from bdach/hide-global-rankings-when-presenting-scores
Only show global rankings on solo results screen when progressing from gameplay
2022-12-27 16:39:26 +08:00
Joseph Madamba
777ffcf805 Highlight "open" option on external link button context menu 2022-12-26 20:47:24 -08:00
Joseph Madamba
bb58976838 Merge remote-tracking branch 'upstream/master' into overlay-panels-context-menu 2022-12-26 17:54:15 -08:00
integer
a0690e7ffb replay menus remembers expanded state
no messing with readonly fields
2022-12-27 00:13:46 +00:00
Joseph Madamba
8bc8b0d0af Remove redundant context menu container 2022-12-26 15:38:07 -08:00
Joseph Madamba
84e3858a86 Move context menu / popover container one level to account for header 2022-12-26 15:37:46 -08:00
Bartłomiej Dach
01cf96e240
Only show global rankings on results screen when progressing from gameplay 2022-12-26 23:35:45 +01:00
Bartłomiej Dach
cb2b0d4178
Remove redundant type specs 2022-12-26 23:12:53 +01:00
Berkan Diler
fcbb21c75e Fix typo 2022-12-26 20:38:35 +01:00
Berkan Diler
c7ca4bbba5 Use generic Enum methods 2022-12-26 20:36:39 +01:00
Bartłomiej Dach
e416bdd06b
Merge branch 'master' into remove_obsolete_star_colours 2022-12-26 16:35:47 +01:00
mk56-spn
fbff5d8d69 Remove obsoleted "ForDifficultyRating" method 2022-12-26 16:16:52 +01:00
Dean Herbert
5dd03c6c60 Update framework 2022-12-26 21:53:52 +08:00
Dan Balasescu
786d94c149
Merge pull request #21792 from Joehuu/fix-parameters-inspection
Fix parameters with the same default value inspection
2022-12-26 15:41:54 +09:00
Joseph Madamba
0dba25e0ab Refactor to just exit sub screens until lounge sub screen
Co-Authored-By: Salman Ahmed <frenzibyte@gmail.com>
2022-12-25 21:56:22 -08:00
Dean Herbert
09cc41604f
Merge branch 'master' into score-stats-on-results 2022-12-26 13:37:36 +08:00
Joseph Madamba
144144c40c Revert removing redundant font parameter 2022-12-25 20:47:05 -08:00
Salman Ahmed
ee77b8cad3
Merge branch 'master' into fix-parameters-inspection 2022-12-26 05:17:40 +03:00
Salman Ahmed
2d57ea6f15
Merge branch 'master' into link-title-and-artist 2022-12-26 03:23:05 +03:00
Joseph Madamba
973fd90af2 Fix parameters with the same default value inspection 2022-12-25 16:15:02 -08:00
Joseph Madamba
f959b02dc8 Use empty drawables for spacing badges instead 2022-12-25 16:05:59 -08:00
Joseph Madamba
8e899c2e92 Use localisation parameters to find preferred string instead 2022-12-25 16:03:44 -08:00
Joseph Madamba
1a571e1c7f Remove nullable disable on user panel 2022-12-25 15:03:08 -08:00
integer
272288c9aa fix code style and naming 2022-12-25 21:50:56 +00:00
Joseph Madamba
b9dfb8b602 Add localisation for context menu strings 2022-12-25 10:12:02 -08:00
Joseph Madamba
2c2f347e25 Add context menus to overlay panels/cards 2022-12-25 09:57:42 -08:00
Joseph Madamba
5232588a1f Use PerformFromScreen to exit sub screens instead 2022-12-24 20:04:45 -08:00
integer
d392d1a5c0 override a sub-method instead of the whole Export() 2022-12-24 22:18:42 +00:00
Joseph Madamba
00ed5d6f92 Merge remote-tracking branch 'upstream/master' into fix-op-non-current-onexiting 2022-12-24 14:01:11 -08:00
Joseph Madamba
b871d6f078 Remove unused fields 2022-12-24 13:35:17 -08:00
Joseph Madamba
ae967e08b0 Add badges when needed instead of using alpha 2022-12-24 13:27:46 -08:00
Joseph Madamba
4f6b3644f3 Fix title/artist overflowing to right side 2022-12-24 12:40:32 -08:00
Joseph Madamba
df645ef3cb Change title/artist idle colour to white 2022-12-24 11:42:05 -08:00
Joseph Madamba
9d073f4228 Link beatmap set title and artist to listing search 2022-12-24 11:26:09 -08:00
Bartłomiej Dach
36a6f3685e
Don't show global rankings display when not logged in 2022-12-24 14:35:11 +01:00
Bartłomiej Dach
145130ba80
Register solo statistics watcher at game level 2022-12-24 14:35:07 +01:00
Bartłomiej Dach
da519acb20
Add overall ranking display to solo results 2022-12-24 14:35:04 +01:00
Bartłomiej Dach
3abdf557ea
Add protected method for customising statistics panel rows 2022-12-24 14:35:00 +01:00
Bartłomiej Dach
600ada46be
Add protected method for customising statistics panel 2022-12-24 14:34:54 +01:00
Bartłomiej Dach
cf0b3ec879
Merge branch 'master' into score-stats-display 2022-12-24 14:32:08 +01:00
Dean Herbert
209d44746a
Merge pull request #21762 from bdach/score-stats-updates
Add solo statistics watcher component to deliver incremental global user statistics updates
2022-12-24 21:30:34 +08:00
Bartłomiej Dach
e961af20cc
Merge branch 'score-stats-updates' into score-stats-display 2022-12-24 13:56:10 +01:00
Bartłomiej Dach
78c47a3695
Add callback to dictionary rather than overwrite
Attempting to overwrite will henceforth throw an exception.
2022-12-24 13:45:04 +01:00
Bartłomiej Dach
6c4ca387e0
Fix wrong handling of missing ruleset statistics 2022-12-24 13:44:11 +01:00
Bartłomiej Dach
3c26016b61
Ensure latest stats are cleared on successful profile fetch 2022-12-24 13:44:08 +01:00
Bartłomiej Dach
fd9110a61e
Fix solo statistics watcher firing requests for invalid user with id 1
Can happen during login flow (see `APIAccess.attemptConnect()`).
2022-12-24 13:44:05 +01:00
Bartłomiej Dach
d6e079a2b4
Ignore statistics update requests from third-party rulesets for now 2022-12-24 13:43:57 +01:00
Bartłomiej Dach
83a50816b6
Remove unused constructor param 2022-12-24 10:44:38 +01:00
Bartłomiej Dach
4bcc2b832c
Merge branch 'master' into add-help-button 2022-12-24 10:40:35 +01:00
Bartłomiej Dach
301eb71e22
Fix wrong member names 2022-12-24 10:39:05 +01:00
Dean Herbert
2c060ac8d4 Add localisation support for new button's strings 2022-12-24 17:32:04 +08:00
Bartłomiej Dach
4e5109a649
Use plain bindable flow instead of binding to watcher directly 2022-12-24 10:27:28 +01:00
Bartłomiej Dach
75ddeaeeb8
Merge branch 'master' into argon-pro-skin-hide-highest-judgement 2022-12-24 09:41:18 +01:00
Bartłomiej Dach
80de5dac66
Fix judgement text never being added to hierarchy 2022-12-24 09:37:40 +01:00
Bartłomiej Dach
f973befcd4
Remove unused resolved member 2022-12-24 09:34:30 +01:00
Dean Herbert
91bde14fb3 Add button to settings to show lazer upgrade guide 2022-12-24 15:42:24 +08:00
Dean Herbert
5e9fb1063a Move judgement text creation to base class and tidy things up 2022-12-24 12:22:36 +08:00
Bartłomiej Dach
c7f248e13c
Implement overall ranking display for solo results screen 2022-12-24 00:30:38 +01:00
integer
498d00935b limit date appending to LegacyScoreExporter only 2022-12-23 23:01:04 +00:00
Bartłomiej Dach
3e782c5f5f
Extract interface for solo statistics watcher 2022-12-23 23:46:41 +01:00
Dean Herbert
727ac00f6d Combine base class for JudgementPiece 2022-12-24 03:32:13 +08:00
Joseph Madamba
2dbcf05fe4 Use enum values as ids in fallback instead 2022-12-23 11:13:27 -08:00
Joseph Madamba
494886ef92 Rename Text to Metadata 2022-12-23 11:11:15 -08:00
Bartłomiej Dach
94d78a47a4
Merge branch 'master' into upgrade-guide-help 2022-12-23 17:22:04 +01:00
Bartłomiej Dach
9a2cc04361
Fix wrong path being used in fail handler 2022-12-23 16:44:03 +01:00
Bartłomiej Dach
67aea34e7e
Merge branch 'master' into fix-breadcrumb-tab-item-click-area 2022-12-23 16:36:58 +01:00
Dean Herbert
a677c8be06 Change path on error 2022-12-23 21:17:42 +08:00
Dean Herbert
5eccafe190 Fix wiki overlay showing error message when load is cancelled 2022-12-23 16:45:40 +08:00
ansel
f25439e359 Move track change subscription to LoadComplete 2022-12-23 01:54:49 +03:00
Bartłomiej Dach
676d4a0d6d
Merge branch 'master' into fix-waveform-zoom-reload 2022-12-22 23:48:50 +01:00
Salman Ahmed
0cb9b79834 Fix ZoomableScrollContainer potentially not updating content width on setup 2022-12-23 00:56:38 +03:00
Salman Ahmed
30de9ba795 Dispose previous waveform on track reload 2022-12-23 00:35:59 +03:00
Berkan Diler
08d2fbeb8e Use new ArgumentNullException.ThrowIfNull throw-helper API 2022-12-22 21:27:59 +01:00
Bartłomiej Dach
fa2d50fe31
Limit tracking unhandled scores to just the last one 2022-12-22 19:59:39 +01:00
Bartłomiej Dach
48dc2332fd
Refactor test to be easier to work with 2022-12-22 19:59:35 +01:00
Bartłomiej Dach
ac872fac9e
Implement solo statistics watcher 2022-12-22 19:59:07 +01:00
ansel
20370bd5ae Invalidate waveform on track load 2022-12-22 20:49:09 +03:00
Salman Ahmed
8be6350c01 Remove no longer necessary assert 2022-12-22 20:07:53 +03:00
Flutterish
5df440e20e dont use is..or syntax 2022-12-22 17:27:55 +01:00
Flutterish
422fdd8ae5 dont post notifications from custom log targets 2022-12-22 16:56:27 +01:00
ansel
d0645ce151 Rewrite waveform invalidation 2022-12-22 15:59:51 +03:00
ansel
f2e8776529 Bind to clock instead of music controller 2022-12-22 15:35:53 +03:00
Salman Ahmed
28fc2f34b5
Merge branch 'master' into restore-default-button-hit-area 2022-12-22 13:32:57 +03:00
Bartłomiej Dach
f5b3988dd2
Add data structure for delivering statistics updates 2022-12-22 08:01:59 +01:00
Dean Herbert
11321f1a41
Merge pull request #21738 from bdach/spectator-user-score-processed
Add score processed callback to spectator client
2022-12-22 13:55:43 +08:00
ansel
a18ece8610 Listen for track reload in timing screen 2022-12-22 01:24:23 +03:00
ansel
7089bb6c23 Listen for track reload in timeline 2022-12-22 01:23:59 +03:00
ansel
66a02374da Clear cached waveform on track change in editor 2022-12-22 01:23:24 +03:00
Bartłomiej Dach
6948035a3c
Ensure score submission attempt completion before notifying spectator server when exiting play early
When a `SubmittingPlayer` gameplay session ends with the successful
completion of a beatmap, `PrepareScoreForResultsAsync()` ensures that
the score submission request is sent to and responded to by osu-web
before calling `ISpectatorClient.EndPlaying()`.

While previously this was mostly an implementation detail, this becomes
important when considering that more and more server-side flows (replay
upload, notifying about score processing completion) hook into
`EndPlaying()`, and assume that by the point that message arrives at
osu-spectator-server, the score has already been submitted and has been
assigned a score ID that corresponds to the score submission token.

As it turns out, in the early-exit path (when the user exits the play
midway through, retries, or just fails), the same ordering guarantees
were not provided. The score's submission ran concurrently to the
spectator client `EndPlaying()` call, therefore creating a network
race. osu-server-spectator components that implciitly relied on the
ordering provided by the happy path, could therefore fail to unmap the
score submission token to a score ID.

Note that as written, the osu-server-spectator replay upload flow is
not really affected by this, as it self-corrects by essentially polling
the database and trying to unmap the score submission token to a score
ID for up to 30 seconds. However, this change would have the benefit of
reducing the polls required in such cases to just one DB retrieval.
2022-12-21 22:23:26 +01:00
Joseph Madamba
e1e6d76f30 Check id for genre/language instead and fallback to name if not defined 2022-12-21 11:02:04 -08:00
Bartłomiej Dach
3ec31a5f51
Fix language selector in first run dialog not updating after changing language in settings 2022-12-21 19:30:21 +01:00
Joseph Madamba
1d39e8d0ce Refactor MetadataSection to use generics and inheritance 2022-12-21 10:18:47 -08:00
Dean Herbert
19f66c806e Fix language dropdown in settings not updating after changing language in first run dialog
Closes #21744.
2022-12-21 16:31:55 +08:00
integer
b06a7daf26 append date to score export filename 2022-12-20 23:40:00 +00:00
Bartłomiej Dach
b03291330f
Add score processed callback to spectator client 2022-12-20 21:23:50 +01:00