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

2860 Commits

Author SHA1 Message Date
Dean Herbert
2d8854cbac Change message comparator to always use timestamp comparison if either message has a missing Id 2022-11-30 15:46:58 +09:00
Dean Herbert
9e34fe360a Ensure all LocalMessages get a timestamp 2022-11-30 15:46:36 +09:00
Dean Herbert
c84f011bb7 Improve ToString output of Message 2022-11-30 15:46:14 +09:00
Dean Herbert
8bf5d6884d Add ruleset to now playing string 2022-11-30 14:47:16 +09:00
Dean Herbert
b453eecebe Ensure empty pieces do not result in whitespace between elements 2022-11-30 14:43:21 +09:00
Dean Herbert
2df6ccf33e Tidy up code 2022-11-30 14:31:54 +09:00
Dean Herbert
b5c514a8f0 Make incoming Channel target non-nullable 2022-11-30 14:30:20 +09:00
Dean Herbert
69bf0df179 Merge branch 'master' into NowPlaying 2022-11-30 14:27:37 +09:00
Dean Herbert
61c702c02e Add new IDependencyInjectionCandidate interface to non-drawable cached classes 2022-11-29 14:45:26 +09:00
Dean Herbert
b5b79e09e4 Remove unnecessary CQ disable 2022-11-29 14:45:08 +09:00
Alden Wu
0cb7c94c21 Merge branch 'master' of https://github.com/ppy/osu into chat-profile-highlight-v2 2022-11-28 17:59:15 -08:00
Alden Wu
c2d8ffc225 Refactor ChatLine username drawable creation 2022-11-28 17:50:12 -08:00
cdwcgt
e16f8a4410
Merge branch 'master' into NowPlaying 2022-11-27 08:48:49 +08:00
cdwcgt
02e3ebe1a0
DifficultyIncrease use + and other all -
mod.Name to mod.Acronym
2022-11-27 09:44:09 +09:00
cdwcgt
653875bbb4
only post mod when ingame 2022-11-27 09:41:41 +09:00
cdwcgt
8ecb4aa30b
better method name 2022-11-27 09:41:08 +09:00
Bartłomiej Dach
c42720acd4
Temporarily disable "partial class with one part" inspection 2022-11-26 18:05:08 +01:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
cdwcgt
13f86f3e53
Merge branch 'master' into NowPlaying 2022-11-25 23:22:52 +09:00
cdwcgt
a2ea7a3f58
show selected mod and use ILocalisedBindableString in np 2022-11-25 23:20:44 +09:00
Bartłomiej Dach
2f67199b1c
Merge branch 'master' into fix-missing-day-separator 2022-11-23 18:40:44 +01:00
Dean Herbert
172e798847
Merge pull request #21228 from Terochi/recent-messages-implementation
Add ability to view chat send history in input box
2022-11-23 14:58:42 +09:00
Bartłomiej Dach
76bb529cfa
Add test for local echo adding day separator 2022-11-22 16:46:21 +01:00
cdwcgt
c509c5be40
impossible null 2022-11-21 19:45:30 +09:00
cdwcgt
e37d30a373
refactor based on reviews
removed LegacyExportManager

Separated the method of CreateZip method and the default export method
2022-11-21 18:58:01 +09:00
Dean Herbert
462a213ffc Add TODO note about handling initial silences 2022-11-21 15:23:04 +09:00
Dean Herbert
efd73ea9da Rename method to suit better 2022-11-21 15:22:57 +09:00
Dean Herbert
5c640d15a0 Stop requesting messages as part of initial chat presence 2022-11-21 15:17:54 +09:00
cdwcgt
4e457871f3
impossible null and remove storage 2022-11-19 01:03:22 +09:00
cdwcgt
4b29941b47
add LegacyExportManager 2022-11-18 20:00:00 +09:00
Dean Herbert
d17c091d63 Move constant to a better location 2022-11-18 15:47:31 +09:00
Dean Herbert
bab5be8dee
Merge pull request #21290 from smoogipoo/multiplayer-test-debug
Add some debugging for multiplayer test failures
2022-11-18 15:39:33 +09:00
Dan Balasescu
219d049edf
Merge pull request #21140 from maromalo/long-standard
Standardise scores to `long` type
2022-11-18 15:26:33 +09:00
Dan Balasescu
cc434c9113
Merge pull request #21288 from peppy/fix-no-network-slow-gameplay-load
Fix entering gameplay while network connection is in a bad state taking too long
2022-11-18 15:24:31 +09:00
Dan Balasescu
b0faa009c1 Add some debugging for multiplayer test failures 2022-11-18 14:52:11 +09:00
Dan Balasescu
57b8495c7a Merge branch 'master' into long-standard 2022-11-18 14:24:04 +09:00
Dean Herbert
964ceddf83 Fix API queue only being flushed once while in a failing state 2022-11-18 14:21:37 +09:00
Dean Herbert
a5d22195f2 Fix potential incorrect connection state resulting in null reference 2022-11-18 13:45:46 +09:00
Terochi
3d4962e181 Added functioning tests. 2022-11-17 13:07:06 +01:00
Terochi
6d83af01e2 Moved and renamed MessageHistoryTextBox.cs for better fit. 2022-11-17 13:07:06 +01:00
Dragon
b9590320b7 Moved implementation to ChatRecentTextBox.cs and derived ChatTextBox.cs and StandAloneChatDisplay.cs from it. 2022-11-17 13:07:06 +01:00
cdwcgt
e1a21e0cf9
create a task to export to avoid block main thread
Code quality and remove some #nullable disable
2022-11-17 01:08:06 +09:00
Dean Herbert
f343ba6111 Add xmldoc for chat ack request 2022-11-13 00:10:06 +09:00
Dean Herbert
22d8a1160e Fix last silence ID being updated too often, causing most silences to be missed 2022-11-13 00:10:06 +09:00
Dean Herbert
143c946128 Simplify ack re-perform flow 2022-11-12 23:02:37 +09:00
Dean Herbert
bfb939cbd0 Expand on why call needs to be made every 10 minutes 2022-11-12 22:24:27 +09:00
Dean Herbert
6a3665a6fd Remove excess logging on WebSocketNotificaitonsClient 2022-11-12 22:09:27 +09:00
maromalo
1911120afe
Merge branch 'master' into long-standard 2022-11-12 09:52:11 -03:00
Dean Herbert
ace4099079 Update ack code after incorrect merge 2022-11-12 21:41:10 +09:00
Dean Herbert
dde09d409b Merge branch 'master' into chat-silences 2022-11-12 21:00:56 +09:00
Dean Herbert
19876ca0fb
Merge branch 'master' into websocket-chat-2 2022-11-11 23:53:42 +09:00
Dan Balasescu
6ac19615fa Fix test failure 2022-11-11 14:55:41 +09:00
Dan Balasescu
fdca3c2d1c Rename method for consistency 2022-11-07 14:35:42 +09:00
Dan Balasescu
67e99b5344 Lookup channels before calling HandleJoinedChannel() 2022-11-07 14:34:55 +09:00
Joseph Madamba
b977fc8181 Use autosize instead of max width on fixed width timestamps 2022-11-06 19:28:01 -08:00
Dan Balasescu
f931bdc5ff Fix channel lookup not considering missing ids 2022-11-07 12:25:23 +09:00
Dan Balasescu
cd8402df72 Print event type to logs 2022-11-07 12:11:50 +09:00
Dan Balasescu
cf03001c83 Better handling for joining channels with only ID 2022-11-07 11:52:07 +09:00
Dan Balasescu
e3adf5a985 Handle channel parts 2022-11-07 11:36:55 +09:00
maromalo
b7ef9b176d Make score type consistent 2022-11-06 19:59:27 -03:00
Dan Balasescu
d426977f03 Handle channel joins 2022-11-04 20:11:42 +09:00
Dan Balasescu
f12ada9d92 Fix chat connecting too early 2022-11-04 19:36:24 +09:00
Dan Balasescu
1d2818dc70 Reschedule ack request on completion 2022-11-04 19:02:26 +09:00
Dan Balasescu
66bbe34116 Move polling clients to osu.Game.Tests namespace 2022-11-04 18:52:57 +09:00
Dan Balasescu
fa18b5f701 Construct notifications client inside ChannelManager 2022-11-04 18:51:00 +09:00
Dan Balasescu
72745656e7 Remove StartChat()/chat enablement 2022-11-04 18:48:34 +09:00
Dan Balasescu
58396d49dc Fix handling of local echo deduplication 2022-11-04 18:44:22 +09:00
Salman Ahmed
ac8fb4f9b2 Fix beatmap cards still potentially showing twice in listing 2022-11-04 03:23:34 +03:00
Dean Herbert
e6c45b8ab5 Merge branch 'master' into comment-report 2022-11-03 15:35:42 +09:00
Dean Herbert
4f8e912f06 Fix APINotification parsing failing 2022-11-02 17:53:19 +09:00
Dan Balasescu
063a8bdf9e Remove messages from silenced users 2022-11-02 17:13:14 +09:00
Dan Balasescu
f688ed12d0 Add test for removing chat messages 2022-11-02 17:00:47 +09:00
Dean Herbert
2b04e852be
Merge branch 'master' into websocket-chat-2 2022-11-02 14:56:13 +09:00
Dan Balasescu
30800c9252 Add/adjust xmldocs 2022-11-02 13:16:34 +09:00
Dan Balasescu
3816152c9d Merge branch 'socket-client' into websocket-chat-2 2022-11-02 11:49:57 +09:00
Dan Balasescu
e59c8b7d24 Use IDisposable instead 2022-11-02 11:49:04 +09:00
Dan Balasescu
c9108ce41b Rename StartAsync -> ConnectAsync 2022-11-02 11:44:16 +09:00
Dan Balasescu
46d1713e28 Rename Socket* -> PersistentEndpoint* 2022-11-02 11:43:22 +09:00
Dan Balasescu
8ac2075c61 Fix possible threading issues
Not really sure of the best way to handle this in general. It could be
argued that this should be a `Component` type and the bindable bound in
`LoadComplete()`...
2022-11-02 10:04:25 +09:00
Dan Balasescu
5b25ef5f2f Construct notifications client via IAPIProvider 2022-11-01 21:34:34 +09:00
Dean Herbert
17f482bfc3
Merge branch 'master' into websocket-chat-2 2022-10-31 16:11:58 +09:00
Dean Herbert
8a37649097
Merge branch 'master' into socket-client 2022-10-31 16:00:14 +09:00
Dan Balasescu
d3173ab1bd Remove weird cast 2022-10-28 18:54:34 +09:00
Dan Balasescu
ab78cde2d4 Fix crossthread mutations 2022-10-28 18:37:43 +09:00
Dan Balasescu
169bcc2654 Use polling connector in tests 2022-10-28 18:08:08 +09:00
Dan Balasescu
527b1d9db1 Generalise + add polling-style for usage in tests 2022-10-28 17:53:28 +09:00
Dan Balasescu
efa8256911 Use more verbatim strings 2022-10-28 16:32:17 +09:00
Dan Balasescu
2f731f86ba Adjust ChannelManager to use notifications client 2022-10-28 16:28:58 +09:00
Dan Balasescu
33bb1212d1 Add notifications websocket + chat implementation 2022-10-28 16:28:58 +09:00
Dan Balasescu
b3219526a5 Populate beatmap ruleset in SoloScoreInfo.ToScoreInfo() 2022-10-28 14:42:45 +09:00
Dean Herbert
dcff8a193c Use better method of forcing serialisation 2022-10-28 01:26:10 +09:00
Dean Herbert
3c4ba6e9fc Fix SoloScoreInfo.Rank not being serialised if rank is D 2022-10-27 19:02:32 +09:00
Dan Balasescu
6cca3a3dc8 Add new API requests 2022-10-27 14:55:24 +09:00
Dan Balasescu
4127aaa988 Extract general elements from HubClientConnector into SocketClientConnector 2022-10-27 14:37:10 +09:00
Dean Herbert
af84f708b7 Avoid serialising some more properties of SoloScoreInfo unless present 2022-10-21 19:30:35 +09:00
ansel
e1785f73a2 Make report's comment not optional 2022-10-16 20:14:05 +03:00
Feodor0090
fb046e31c1
Merge branch 'master' into comment-report 2022-10-14 16:57:23 +03:00
ansel
7251d41deb Add request class 2022-10-14 16:15:28 +03:00
Dan Balasescu
525f98c158 Fix max combo missing from playlists results screen 2022-10-14 18:01:54 +09:00
Dean Herbert
47fe4eb0bd Merge branch 'master' into comment-deletion 2022-10-12 15:48:26 +09:00
Dean Herbert
74db42394a Silence unobserved exceptions in BeginPlayingInternal
Closes #20526.
2022-10-05 14:31:13 +09:00
ansel
7645fe20f5 Merge branch 'master' into comment-deletion 2022-09-28 17:55:22 +03:00
ansel
58d9509ce6 Apply NRT to Comment 2022-09-27 22:45:05 +03:00
ansel
5282c8b8c6 Fix CQ 2022-09-27 19:40:18 +03:00
ansel
5da7cb5397 Make comment ID public for test 2022-09-27 19:02:18 +03:00
ansel
1721b8e47a Add request class 2022-09-27 16:25:26 +03:00
Dan Balasescu
1811647e34 Make room requests handler handle GetBeatmapRequest 2022-09-27 20:30:41 +09:00
Dean Herbert
de6709d12c Fix rank_history serialisation order dependence
```csharp
[network] 2022-09-26 18:18:39 [verbose]: Processing response from https://dev.ppy.sh/api/v2/me/ failed with Newtonsoft.Json.JsonSerializationException: Error setting value to 'rankHistory' on 'osu.Game.Online.API.Requests.Responses.APIUser'.
[network] 2022-09-26 18:18:39 [verbose]: ---> System.NullReferenceException: Object reference not set to an instance of an object.
[network] 2022-09-26 18:18:39 [verbose]: at osu.Game.Online.API.Requests.Responses.APIUser.set_rankHistory(APIRankHistory
value) in /tmp/osu/osu.Game/Online/API/Requests/Responses/APIUser.cs:line 231
```
2022-09-27 12:46:17 +09:00
Dean Herbert
a1297af441 Apply NRT to base Leaderboard classes 2022-09-26 16:12:47 +09:00
Dean Herbert
32d56fe3a9 Use request cancellation and IsDisposed guard instead of more Schedule 2022-09-26 16:02:33 +09:00
Dean Herbert
37e2579244 Fix reversed checks 2022-09-22 20:35:26 +09:00
Dan Balasescu
7508592789 Clean up some checks 2022-09-22 19:56:24 +09:00
Dean Herbert
29c4d06d36 Merge branch 'fix-gameplay-leaderboard-layout' into gameplay-leaderboards 2022-09-21 14:58:58 +09:00
Dean Herbert
8837618ab1
Merge pull request #20342 from smoogipoo/server-shutdown-countdown
Implement server shutdown countdown + notification
2022-09-20 20:51:16 +09:00
Dan Balasescu
d777afc454 Remove countdown at under 5 seconds 2022-09-20 19:55:44 +09:00
Dean Herbert
68c040175a Ensure Leaderboard.Scores is updated immediately via request flow 2022-09-20 17:02:57 +09:00
Dan Balasescu
b84f716c22 Display seconds when hours>0 to be more lively 2022-09-20 16:02:31 +09:00
Dan Balasescu
ef29987f36 Remove FinalNotification 2022-09-20 15:54:18 +09:00
Dan Balasescu
700000b583 Use custom notification with timer 2022-09-20 15:54:18 +09:00
Salman Ahmed
9a10ecb378 Clarify purpose of APIUserScoreAggregate 2022-09-17 19:37:30 +03:00
Dean Herbert
a1d830e47f Fix formatting 2022-09-17 22:22:56 +09:00
vegguid
0bfe967452 moved BindValueChanged to LoadComplete 2022-09-17 12:58:23 +02:00
vegguid
288cc7b201 Fixed Leaderboard tooltip not following time format setting 2022-09-16 21:36:17 +02:00
Dan Balasescu
92b2417d4c Post notification when room joined 2022-09-16 21:10:11 +09:00
Dan Balasescu
433bb5ae24 Add ServerShuttingDownCountdown 2022-09-16 19:56:52 +09:00
Dean Herbert
4c4fdfd153 Provide scores directly to Player instance rather than relying on DI 2022-09-16 18:15:17 +09:00
Dean Herbert
0227eddda1 Merge branch 'master' into gameplay-leaderboards 2022-09-16 15:44:58 +09:00
Dean Herbert
21ac3fd88b Catch any unobserved exceptions during beatmap metadata harvesting
The process will retry when a connection is successful, so this doesn't
need to be as loud as it was.

Addresses https://github.com/ppy/osu/discussions/20331.
2022-09-16 14:00:06 +09:00
Dean Herbert
581a4d2d6d Use APIBeatmap for realm migration requiring ShortName mapping 2022-09-15 16:58:58 +09:00
Dean Herbert
6d167070f8 Add back DI leaderboard retrieval via bindable pathway 2022-09-13 18:45:11 +09:00
Dean Herbert
cb6d02ec3a
Merge pull request #19066 from andy840119/remove-the-nullable-disable-in-the-ruleset
Remove the nullable disable annotation in the ruleset class
2022-09-12 19:07:23 +09:00
Dan Balasescu
31225066a1
Merge pull request #19308 from frenzibyte/top-rank-badge-order
Fix best rank badge not handling legacy scores properly
2022-09-12 16:20:21 +09:00
Dan Balasescu
1eb2c74e57 Fix countdown serialisation 2022-09-11 18:50:51 +09:00
andy840119
1398a7e11e Property should accept the nullable state. 2022-09-10 10:46:40 +08:00
Salman Ahmed
dd10a06e3d Merge branch 'master' into top-rank-badge-order 2022-09-09 19:38:44 +03:00
Dan Balasescu
ba2ef424d4 Turn score ids into ulongs 2022-09-09 11:46:06 +09:00
Dan Balasescu
4fc03998a1
Merge pull request #20189 from peppy/fix-playlist-item-download-button-visibility
Fix playlist items showing download button briefly during initial display
2022-09-08 19:47:35 +09:00
Dean Herbert
13d9b2188b
Merge pull request #20145 from smoogipoo/multiple-countdowns
Implement support for multiple active countdowns in multiplayer
2022-09-08 19:15:30 +09:00
Dean Herbert
0de220c45c Change IsExclusive default value to true 2022-09-08 17:54:29 +09:00
Dean Herbert
ed81297611 Fix playlist items showing download button briefly during initial local presence checks 2022-09-08 17:10:45 +09:00
Dan Balasescu
b2f30fbf8c Add countdown exclusivity 2022-09-05 20:13:23 +09:00
Dan Balasescu
2923c10cd8 Rewrite rooms to store multiple active countdowns
Update test to the new structure
2022-09-05 19:03:26 +09:00
Dan Balasescu
b10026993a Don't serialise has_replay 2022-09-02 16:41:53 +09:00
Dan Balasescu
a277431266 Add has_replay and legacy_score_id to SoloScoreInfo 2022-09-01 21:10:38 +09:00
Dan Balasescu
d70208fcf1 Default to off 2022-09-01 14:14:22 +09:00
Dan Balasescu
b5ec7d06dd Add auto-skip setting
Default to auto skip
2022-08-31 20:24:06 +09:00
Dean Herbert
09aa3e065d Move colouring to full icon content rather than background 2022-08-30 18:06:48 +09:00
Dan Balasescu
799c015bff Add LegacyTotalScore to SoloScoreInfo 2022-08-30 15:50:19 +09:00
Dean Herbert
b9d9bf3004
Merge pull request #19938 from frenzibyte/fix-multi-spectator-results-screen
Fix multi-spectator potentially getting stuck for passed players
2022-08-26 21:53:17 +09:00
Salman Ahmed
6840e906e7 watchedUsers -> watchedUsersRefCounts 2022-08-25 09:50:52 +03:00