Dean Herbert
b7aa71c975
Adjust xmldoc slightly to convey the disposal pattern
2025-02-05 18:24:07 +09:00
Dean Herbert
0d7bbd63fc
Merge branch 'master' into user-panel-status
2025-02-04 22:56:19 +09:00
Dean Herbert
a93dabd33f
Merge branch 'master' into multiplayer-free-style
2025-02-04 21:48:39 +09:00
Dan Balasescu
61419ec9c8
Refactor user presence watching to be tokenised
2025-02-04 17:54:03 +09:00
Dean Herbert
444e0970d6
Standardise naming to use "Freestyle" not "FreeStyle"
2025-02-03 19:01:59 +09:00
Dean Herbert
f24716563c
Merge branch 'master' into user-panel-status
2025-02-03 18:31:28 +09:00
Dean Herbert
facc9a4dc3
Fix reference hashsets getting emptied before used
2025-01-29 19:15:28 +09:00
Dean Herbert
bf40f071eb
Code quality pass
2025-01-29 17:43:49 +09:00
Dan Balasescu
ca979d3542
Adjust xmldocs
2025-01-27 18:32:12 +09:00
Jamie Taylor
79df094f17
Add unique samples for friend online/offline notifications
2025-01-24 23:20:04 +09:00
Dean Herbert
1bfb4d4c2b
Merge branch 'master' into multiplayer-free-style
2025-01-24 17:23:35 +09:00
Dean Herbert
9e023340b0
Mark friend notifications as non-important
2025-01-22 16:41:27 +09:00
Dean Herbert
fde2b22bbc
Add transient flag for notifications which shouldn't linger in history
2025-01-22 16:41:26 +09:00
Dan Balasescu
8f8246278a
Merge pull request #31527 from bdach/spectator-list-ready
...
Show spectating users during gameplay
2025-01-21 18:54:11 +09:00
Dean Herbert
c68a0bc7e3
Merge branch 'master' into multiplayer-free-style
2025-01-21 17:49:21 +09:00
CloneWith
72e1b2954c
Don't highlight friends' scores under beatmap's friend score leaderboard
2025-01-20 00:21:10 +08:00
Dean Herbert
66a72bffa8
Merge branch 'remove-status-from-apiuser' into user-panel-status
2025-01-17 17:32:39 +09:00
Dean Herbert
3bb4b0c2b8
Rename fields from State
to Presence
when presence is involved
2025-01-17 16:25:48 +09:00
Dan Balasescu
626be9d780
Return local user state where appropriate
2025-01-17 16:01:11 +09:00
Dan Balasescu
fe5b807e7d
Merge branch 'remove-status-from-apiuser' into user-panel-status
2025-01-17 15:59:39 +09:00
Dan Balasescu
a51938f4e9
Separate the local user state
2025-01-17 15:59:34 +09:00
Dan Balasescu
5425d62186
Merge branch 'master' into remove-status-from-apiuser
2025-01-17 15:42:40 +09:00
Bartłomiej Dach
1f1e940ada
Restore virtual modifier to fix tests (and mark for posterity)
2025-01-16 15:13:16 +01:00
Bartłomiej Dach
0c54853710
Merge branch 'spectator-list-visuals' into spectator-list-ready
2025-01-16 15:13:04 +01:00
Bartłomiej Dach
e3b780d0fb
Merge branch 'master' into spectator-list-visuals
2025-01-16 14:07:53 +01:00
Dan Balasescu
be892e2baa
Merge branch 'remove-status-from-apiuser' into user-panel-status
2025-01-16 20:34:37 +09:00
Dan Balasescu
8400726887
Move bindables to OsuConfigManager & SessionStatics
2025-01-16 19:33:42 +09:00
Dean Herbert
cde8e7b82e
Fix idle/hover colour handling weirdness in OsuHoverContainer
2025-01-16 18:54:51 +09:00
Dan Balasescu
fd75ae2614
Merge branch 'remove-status-from-apiuser' into user-panel-status
2025-01-16 17:16:43 +09:00
Dan Balasescu
c1f0c47586
Allow setting of DummyAPIAccess status
2025-01-16 17:06:54 +09:00
Dan Balasescu
b54d959263
Expose as IBindable from IAPIProvider, writes via config
2025-01-16 17:05:18 +09:00
Dan Balasescu
409ea53ad9
Send beatmap_id
when creating score
2025-01-16 15:51:53 +09:00
Bartłomiej Dach
43fc48a3f3
Add client methods allowing users to be notified of who is watching them
2025-01-15 14:18:01 +01:00
Bartłomiej Dach
582c5180b9
Implement spectator list display
...
- First step for https://github.com/ppy/osu/issues/22087
- Supersedes / closes https://github.com/ppy/osu/pull/22795
Roughly uses design shown in
https://github.com/ppy/osu/pull/22795#issuecomment-1579936284 with some
modifications to better fit everything else, and some customisation
options so it can fit better on other skins.
2025-01-15 14:17:53 +01:00
Dan Balasescu
8985a38734
Display up-to-date online status in user panels
2025-01-15 16:55:25 +09:00
Dan Balasescu
b7a9b77efe
Make config the definitive status value
2025-01-15 00:01:19 +09:00
Dan Balasescu
20108e3b74
Remove Status and Activity bindables from APIUser
...
As for the tests, I'm (ab)using the `IsOnline` state for the time being
to restore functionality.
2025-01-14 23:45:30 +09:00
Dean Herbert
91fa2e70d8
Revert name change
2025-01-14 20:41:18 +09:00
Dean Herbert
3523a2fe61
Merge branch 'master' into api-startup-state
2025-01-14 20:39:05 +09:00
Dan Balasescu
f2b7984e5a
Merge pull request #31507 from peppy/api-startup-user
...
Ensure API starts up with `LocalUser` in correct state
2025-01-14 20:36:55 +09:00
Plextora
31d7c6a22e
Merge branch 'master' into colour-for-friend-lb
2025-01-14 05:57:44 -05:00
Dean Herbert
b4d054fdc0
Merge pull request #31444 from smoogipoo/friend-presence-2
...
Add notifications for when friends go online or offline
2025-01-14 18:58:19 +09:00
Dean Herbert
55ae0403d8
Ensure API state is Connecting
immediately on startup when credentials are present
...
Currently, there's a period where the API is `Offline` even though it is
about to connect (as soon as the `run` thread starts up).
This can cause any `Queue`d requests to fail if they arrive too early.
To avoid this, let's ensure the `Connecting` state is set as early as
possible.
2025-01-14 18:18:53 +09:00
Dan Balasescu
156207d347
Remove unused using
2025-01-14 17:54:40 +09:00
Dan Balasescu
51c7c218bf
Simplify operations on local list
2025-01-14 17:52:26 +09:00
Dean Herbert
f6073d4ac0
Ensure API starts up with LocalUser
in correct state
...
I noticed in passing that in a very edge case scenario where the API's
`run` thread doesn't run before it is loaded into the game, something
could access it and get a guest `LocalUser` when the local user actually
has a valid login.
Put another way, the `protected HasLogin` could be `true` while
`LocalUser` is `Guest`.
I think we want to avoid this, so I've moved the initial set of the
local user earlier in the initialisation process.
If this is controversial in any way, the PR can be closed and we can
assume no one is ever going to run into this scenario (or that it
doesn't matter enough even if they did).
2025-01-14 17:43:43 +09:00
Dean Herbert
3c913c9f6d
Merge branch 'master' into colour-for-friend-lb
2025-01-14 16:34:05 +09:00
Dean Herbert
94ea003d90
Update game ScrollContainer
usage in line with framework changes
...
See https://github.com/ppy/osu-framework/pull/6467 .
2025-01-11 01:42:59 +09:00
Dan Balasescu
7268b2e077
Add separate path for friend presence notifications
...
It proved to be too difficult to deal with the flow that clears user
states on stopping the watching of global presence updates. It's not
helped in the least that friends are updated via the API, so there's a
third flow to consider (and the timings therein - both server-spectator
and friends are updated concurrently).
Simplest is to separate the friends flow, though this does mean some
logic and state duplication.
2025-01-09 17:31:01 +09:00
Dan Balasescu
f4d83fe685
Keep friend states when stopping watching global activity
2025-01-09 13:23:16 +09:00