Commit Graph

470 Commits

Author SHA1 Message Date
Dean Herbert 2ec9343868
Add the ability to spectate a user by right clicking their user panel 2023-12-28 17:35:10 +09:00
Bartłomiej Dach 37049d41b4
Show user's status as tooltip on the extended user panel 2023-12-06 19:37:35 +01:00
Bartłomiej Dach 41c33f74f2
Extend metadata client with user presence-observing capabilities 2023-12-06 19:37:35 +01:00
Bartłomiej Dach d66fa09320
Simplify `UserStatus` to be an enumeration type
There were absolutely no gains from having it be a reference type /
class, only complications, especially when coming from the serialisation
angle.
2023-12-06 18:52:27 +01:00
Bartłomiej Dach cb823f367f
Simplify `UserActivity` for serialisability over the wire
Up until now, the `UserActivity` class hierarchy contained things like
beatmap info, room info, full replay info, etc. While this was
convenient, it is soon going to be less so, as the data is sent over the
wire to the spectator server so that the user's activity can be
broadcast to other clients.

To counteract this without creating a second separate and slimmed-down
class hierarchy, slim down the `UserActivity` structure to contain the
bare minimum amounts of data such that the structures aren't overly
large and complex to serialise, but also contain enough data that they
can be used by receiving clients directly without having to do beatmap
or score lookups.
2023-12-06 18:52:26 +01:00
Joshua Hegedus deef8998f7
reverted the change 2023-11-15 17:22:36 +09:00
Joshua Hegedus aa9deecafe
added missing comment, fixed incorrect visibility 2023-11-15 17:22:36 +09:00
Bartłomiej Dach fbf94214a5
Fully delegate tooltip show/hide logic 2023-11-10 18:36:09 +09:00
Bartłomiej Dach 36d0bae42d
Restore mention of dependency on another ctor param 2023-11-10 17:57:16 +09:00
Dean Herbert 7fc2050f72
Rename variables and mak seconary tooltip type work again 2023-11-10 11:52:34 +09:00
Dean Herbert 615d8384ab
Refactor everythign back to sanity 2023-11-09 22:31:28 +09:00
Joshua Hegedus 4900a91c60
fixed static analysis problems and finished the implementation 2023-11-09 13:27:09 +01:00
Joshua Hegedus ccb9ff826a
fixed tests 2023-11-09 13:09:59 +01:00
Joshua Hegedus f897c21b3f
partial change 2023-11-06 15:25:12 +01:00
Joshua Hegedus a01f6187f4
testing the tooltip 2023-11-06 14:52:06 +01:00
Joshua Hegedus 034f53da4b
added isEnabled to tooltip 2023-11-06 11:54:57 +01:00
Joshua Hegedus 4a70f2435c
fixed showUsernameTooltip 2023-11-06 09:22:50 +01:00
Joshua Hegedus b45d8c785c
fixed review findings 2023-11-06 08:38:34 +01:00
Dean Herbert 40d081ee2d
Add note about `Width` requirement in `UserGridPanel` 2023-11-06 16:05:50 +09:00
Joshua Hegedus ec290ae953
added tests 2023-11-04 19:03:23 +01:00
Joshua Hegedus a70bfca501
added usergrid for tooltip 2023-11-04 17:57:37 +01:00
Dean Herbert da07066a74
Add note about `CountryCode` being at parity with `osu_countries` 2023-10-25 13:03:03 +09:00
Dean Herbert 17070707b5
Update and add remaining country codes to match database 2023-10-24 14:46:58 +09:00
Dean Herbert 11c949d091
Sort countries alphabetically 2023-10-24 14:45:25 +09:00
Dean Herbert 1591246afb
Update country code names to match database
Required for ASS / osu-web cross-compatibility
2023-10-24 13:53:31 +09:00
Dean Herbert 56e27f1c27
Merge branch 'master' into multiplayer-invites 2023-10-12 18:17:15 +09:00
Dean Herbert a512ef5637
Add exceptions to online state handling 2023-10-12 17:41:31 +09:00
Marvin Schürz 6bd51b32b4 Make resolved `multiplayerClient` field nullable 2023-10-04 08:35:45 +02:00
Marvin Schürz 7629b725a2 Add invite button to UserPanel context menu 2023-10-02 22:55:53 +02:00
Joseph Madamba 5ee412cc9a
Use `@2x` variant of profile badges 2023-09-06 16:17:53 -07:00
Magnus-Cosmos 40dbf098d2
Use existing localisation for "view profile" 2023-09-02 22:51:08 -04:00
Dean Herbert d74b1e148d Make `ScoreInfo.BeatmapInfo` nullable 2023-07-04 14:50:34 +09:00
Dean Herbert 0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Joseph Madamba e1906a90eb
Use `image@2x` from tournament banner api 2023-03-25 13:08:46 -07:00
Dean Herbert d95bcb10cc
Merge pull request #22744 from EXtremeExploit/groups-badges-list
Add group badges to list view
2023-03-09 15:45:46 +09:00
EXtremeExploit 686259a33c
Make support badge in list match groups 2023-03-08 13:57:20 -03:00
tsrk 20a610ea6c
style: a NRT pass on `UpdateableFlag` 2023-03-05 23:15:58 +00:00
EXtremeExploit edd37a9a7c
cleanup 2023-03-03 16:16:45 -03:00
EXtremeExploit e23db62386
Do list group'badges in a nicer way 2023-03-03 16:14:19 -03:00
EXtremeExploit 2b9d13cfee
Add group badges to list view 2023-02-26 20:58:20 -03:00
Joseph Madamba cb51b9e350 Use existing `ModdingBeatmap` activity 2023-02-12 15:01:50 -08:00
Joseph Madamba bbeef53569 Add `TestingBeatmap` activity 2023-02-12 13:11:42 -08:00
Joseph Madamba afb66d8af4 Make user activity class names more specific 2023-02-12 12:32:17 -08:00
Dean Herbert 0c5dae5f26
Merge pull request #22529 from ItsShamed/dsc/presence
Add support for `Watching` and `Spectating` activities in `ReplayPlayer` and `SoloSpectatingPlayer`
2023-02-11 17:29:47 +09:00
Bartłomiej Dach 11296c4ffe
Use better exception type 2023-02-10 21:25:19 +01:00
Dean Herbert 199fb0fd85 Apply NRT to `ClickableAvatar` and `UpdateableAvatar` 2023-02-10 16:32:58 +09:00
Dean Herbert 5866b67a5b Simplify tooltip implementation 2023-02-10 16:24:44 +09:00
Dean Herbert 68c37585e5 Use `string.Empty` instead of `default` 2023-02-10 16:22:06 +09:00
Joseph Madamba a86f06df96 Add back `Enabled` checks to `TooltipText` and `OnClick` to fix guest case 2023-02-09 17:00:32 -08:00
Joseph Madamba 0b41dbf579 Remove code bloat from `ClickableAvatar` 2023-02-09 12:59:26 -08:00